Class ResponseMode

java.lang.Object
com.nimbusds.oauth2.sdk.id.Identifier
com.nimbusds.oauth2.sdk.ResponseMode
All Implemented Interfaces:
Serializable, Comparable<Identifier>, net.minidev.json.JSONAware

@Immutable public final class ResponseMode extends Identifier
Authorisation response mode.

Related specifications:

  • OAuth 2.0 Multiple Response Type Encoding Practices 1.0
  • OAuth 2.0 Form Post Response Mode 1.0
  • Financial-grade API: JWT Secured Authorization Response Mode for OAuth 2.0 (JARM)
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final ResponseMode
    The authorisation response parameters are encoded as HTML form values that are auto-submitted in the User Agent, and thus are transmitted via the HTTP POST method to the client, with the result parameters being encoded in the body using the application/x-www-form-urlencoded format.
    static final ResponseMode
    The authorisation response parameters are packaged in a JSON Web Token (JWT) which is transmitted via the HTTP POST method to the client.
    static final ResponseMode
    The authorisation response parameters are encoded in the fragment added to the redirect_uri when redirecting back to the client.
    static final ResponseMode
    The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response fragment parameter added to the redirect_uri when redirecting back to the client.
    static final ResponseMode
    The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response parameter using the redirect encoding (query.jwt, fragment.jwt for the requested response_type.
    static final ResponseMode
    The authorisation response parameters are encoded in the query string added to the redirect_uri when redirecting back to the client.
    static final ResponseMode
    The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response query parameter added to the redirect_uri when redirecting back to the client.

    Fields inherited from class com.nimbusds.oauth2.sdk.id.Identifier

    DEFAULT_BYTE_LENGTH, secureRandom
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new authorisation response mode with the specified value.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    equals(Object object)
     
    Resolves the requested response mode.
    Resolves the appropriate JWT-secured authorisation response mode (JARM) for the specified response type

    Methods inherited from class com.nimbusds.oauth2.sdk.id.Identifier

    compareTo, getValue, hashCode, toJSONString, toString, toStringList

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • QUERY

      public static final ResponseMode QUERY
      The authorisation response parameters are encoded in the query string added to the redirect_uri when redirecting back to the client.
    • FRAGMENT

      public static final ResponseMode FRAGMENT
      The authorisation response parameters are encoded in the fragment added to the redirect_uri when redirecting back to the client.
    • FORM_POST

      public static final ResponseMode FORM_POST
      The authorisation response parameters are encoded as HTML form values that are auto-submitted in the User Agent, and thus are transmitted via the HTTP POST method to the client, with the result parameters being encoded in the body using the application/x-www-form-urlencoded format. The action attribute of the form MUST be the client's redirection URI. The method of the form attribute MUST be POST.
    • QUERY_JWT

      public static final ResponseMode QUERY_JWT
      The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response query parameter added to the redirect_uri when redirecting back to the client.
    • FRAGMENT_JWT

      public static final ResponseMode FRAGMENT_JWT
      The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response fragment parameter added to the redirect_uri when redirecting back to the client.
    • FORM_POST_JWT

      public static final ResponseMode FORM_POST_JWT
      The authorisation response parameters are packaged in a JSON Web Token (JWT) which is transmitted via the HTTP POST method to the client. The action attribute of the form MUST be the client's redirection URI. The method of the form attribute MUST be POST.
    • JWT

      public static final ResponseMode JWT
      The authorisation response parameters are packaged in a JSON Web Token (JWT) which is returned as a response parameter using the redirect encoding (query.jwt, fragment.jwt for the requested response_type.

      See resolve(ResponseMode, ResponseType).

  • Constructor Details

    • ResponseMode

      public ResponseMode(String value)
      Creates a new authorisation response mode with the specified value.
      Parameters:
      value - The response mode value. Must not be null.
  • Method Details

    • resolve

      public static ResponseMode resolve(ResponseMode rm, ResponseType rt)
      Resolves the requested response mode.

      If the jwt response mode shortcut from JARM is explicitly requested expands it to query.jwt or fragment.jwt depending on the response type (response_type).

      Parameters:
      rm - The explicitly requested response mode (response_mode), null if not specified.
      rt - The response type (response_type), null if not known.
      Returns:
      The resolved response mode.
    • resolveJARM

      Resolves the appropriate JWT-secured authorisation response mode (JARM) for the specified response type
      Parameters:
      rt - The response type (response_type). Must not be null.
      Returns:
      A query.jwt or fragment.jwt response mode.
    • equals

      public boolean equals(Object object)
      Overrides:
      equals in class Identifier