Class ClientSecretPost


@Immutable public final class ClientSecretPost extends PlainClientSecret
Client secret post authentication at the Token endpoint. Implements ClientAuthenticationMethod.CLIENT_SECRET_POST.

Related specifications:

  • OAuth 2.0 (RFC 6749)
  • OpenID Connect Core 1.0
  • Constructor Details

    • ClientSecretPost

      public ClientSecretPost(ClientID clientID, Secret secret)
      Creates a new client secret post authentication.
      Parameters:
      clientID - The client identifier. Must not be null.
      secret - The client secret. Must not be null.
  • Method Details

    • getFormParameterNames

      Description copied from class: ClientAuthentication
      Returns the name of the form parameters, if such are used by the authentication method.
      Specified by:
      getFormParameterNames in class ClientAuthentication
      Returns:
      The form parameter names, empty set if none.
    • toParameters

      Returns the parameter representation of this client secret post authentication. Note that the parameters are not application/x-www-form-urlencoded encoded.

      Parameters map:

       "client_id" = [client-identifier]
       "client_secret" = [client-secret]
       
      Returns:
      The parameters map, with keys "client_id" and "client_secret".
    • applyTo

      public void applyTo(HTTPRequest httpRequest)
      Description copied from class: ClientAuthentication
      Applies the authentication to the specified HTTP request by setting its Authorization header and/or POST entity-body parameters (according to the implemented client authentication method).
      Specified by:
      applyTo in class ClientAuthentication
      Parameters:
      httpRequest - The HTTP request. Must not be null.
    • parse

      public static ClientSecretPost parse(Map<String,List<String>> params) throws ParseException
      Parses a client secret post authentication from the specified parameters map. Note that the parameters must not be application/x-www-form-urlencoded encoded.
      Parameters:
      params - The parameters map to parse. The client secret post parameters must be keyed under "client_id" and "client_secret". The map must not be null.
      Returns:
      The client secret post authentication.
      Throws:
      ParseException - If the parameters map couldn't be parsed to a client secret post authentication.
    • parse

      public static ClientSecretPost parse(String paramsString) throws ParseException
      Parses a client secret post authentication from the specified application/x-www-form-urlencoded encoded parameters string.
      Parameters:
      paramsString - The parameters string to parse. The client secret post parameters must be keyed under "client_id" and "client_secret". The string must not be null.
      Returns:
      The client secret post authentication.
      Throws:
      ParseException - If the parameters string couldn't be parsed to a client secret post authentication.
    • parse

      public static ClientSecretPost parse(HTTPRequest httpRequest) throws ParseException
      Parses a client secret post authentication from the specified HTTP POST request.
      Parameters:
      httpRequest - The HTTP POST request to parse. Must not be null and must contain a valid application/x-www-form-urlencoded encoded parameters string in the entity body. The client secret post parameters must be keyed under "client_id" and "client_secret".
      Returns:
      The client secret post authentication.
      Throws:
      ParseException - If the HTTP request header couldn't be parsed to a valid client secret post authentication.