Class OIDCClientRegistrationRequest

  • All Implemented Interfaces:
    Message, Request

    @Immutable
    public class OIDCClientRegistrationRequest
    extends ClientRegistrationRequest
    OpenID Connect client registration request.

    Example HTTP request:

     POST /connect/register HTTP/1.1
     Content-Type: application/json
     Accept: application/json
     Host: server.example.com
     Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJ ...
    
     {
      "application_type"                : "web",
      "redirect_uris"                   : [ "https://client.example.org/callback",
                                            "https://client.example.org/callback2" ],
      "client_name"                     : "My Example",
      "client_name#ja-Jpan-JP"          : "クライアント名",
      "logo_uri"                        : "https://client.example.org/logo.png",
      "subject_type"                    : "pairwise",
      "sector_identifier_uri"           : "https://other.example.net/file_of_redirect_uris.json",
      "token_endpoint_auth_method"      : "client_secret_basic",
      "jwks_uri"                        : "https://client.example.org/my_public_keys.jwks",
      "userinfo_encrypted_response_alg" : "RSA1_5",
      "userinfo_encrypted_response_enc" : "A128CBC-HS256",
      "contacts"                        : [ "[email protected]", "[email protected]" ],
      "request_uris"                    : [ "https://client.example.org/rf.txt#qpXaRLh_n93TTR9F252ValdatUQvQiJi5BDub2BeznA" ]
     }
     

    Related specifications:

    • OpenID Connect Dynamic Client Registration 1.0, section 3.1.
    • OAuth 2.0 Dynamic Client Registration Protocol (RFC 7591), sections 2 and 3.1.
    • Constructor Detail

      • OIDCClientRegistrationRequest

        public OIDCClientRegistrationRequest​(URI uri,
                                             OIDCClientMetadata metadata,
                                             BearerAccessToken accessToken)
        Creates a new OpenID Connect client registration request.
        Parameters:
        uri - The URI of the client registration endpoint. May be null if the ClientRegistrationRequest.toHTTPRequest() method will not be used.
        metadata - The OpenID Connect client metadata. Must not be null and must specify one or more redirection URIs.
        accessToken - An OAuth 2.0 Bearer access token for the request, null if none.
      • OIDCClientRegistrationRequest

        public OIDCClientRegistrationRequest​(URI uri,
                                             OIDCClientMetadata metadata,
                                             com.nimbusds.jwt.SignedJWT softwareStatement,
                                             BearerAccessToken accessToken)
        Creates a new OpenID Connect client registration request with an optional software statement.
        Parameters:
        uri - The URI of the client registration endpoint. May be null if the ClientRegistrationRequest.toHTTPRequest() method will not be used.
        metadata - The OpenID Connect client metadata. Must not be null and must specify one or more redirection URIs.
        softwareStatement - Optional software statement, as a signed JWT with an iss claim; null if not specified.
        accessToken - An OAuth 2.0 Bearer access token for the request, null if none.
    • Method Detail

      • parse

        public static OIDCClientRegistrationRequest parse​(HTTPRequest httpRequest)
                                                   throws ParseException
        Parses an OpenID Connect client registration request from the specified HTTP POST request.
        Parameters:
        httpRequest - The HTTP request. Must not be null.
        Returns:
        The OpenID Connect client registration request.
        Throws:
        ParseException - If the HTTP request couldn't be parsed to an OpenID Connect client registration request.