Enum Class OidcConfig.ClientAuthentication

java.lang.Object
java.lang.Enum<OidcConfig.ClientAuthentication>
io.helidon.security.providers.oidc.common.OidcConfig.ClientAuthentication
All Implemented Interfaces:
Serializable, Comparable<OidcConfig.ClientAuthentication>, Constable
Enclosing class:
OidcConfig

public static enum OidcConfig.ClientAuthentication extends Enum<OidcConfig.ClientAuthentication>
Client Authentication methods that are used by Clients to authenticate to the Authorization Server when using the Token Endpoint.
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    Clients that have received a client_secret value from the Authorization Server authenticate with the Authorization Server in accordance with Section 2.3.1 of OAuth 2.0 [RFC6749] using the HTTP Basic authentication scheme.
    Clients that have received a client_secret value from the Authorization Server create a JWT using an HMAC SHA algorithm, such as HMAC SHA-256.
    Clients that have received a client_secret value from the Authorization Server, authenticate with the Authorization Server in accordance with Section 2.3.1 of OAuth 2.0 [RFC6749] by including the Client Credentials in the request body.
    The Client does not authenticate itself at the Token Endpoint, either because it uses only the Implicit Flow (and so does not use the Token Endpoint) or because it is a Public Client with no Client Secret or other authentication mechanism.
    Clients that have registered a public key sign a JWT using that key.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the enum constant of this class with the specified name.
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • CLIENT_SECRET_BASIC

      public static final OidcConfig.ClientAuthentication CLIENT_SECRET_BASIC
      Clients that have received a client_secret value from the Authorization Server authenticate with the Authorization Server in accordance with Section 2.3.1 of OAuth 2.0 [RFC6749] using the HTTP Basic authentication scheme. This is the default client authentication.
    • CLIENT_SECRET_POST

      public static final OidcConfig.ClientAuthentication CLIENT_SECRET_POST
      Clients that have received a client_secret value from the Authorization Server, authenticate with the Authorization Server in accordance with Section 2.3.1 of OAuth 2.0 [RFC6749] by including the Client Credentials in the request body.
    • CLIENT_SECRET_JWT

      public static final OidcConfig.ClientAuthentication CLIENT_SECRET_JWT
      Clients that have received a client_secret value from the Authorization Server create a JWT using an HMAC SHA algorithm, such as HMAC SHA-256. The HMAC (Hash-based Message Authentication Code) is calculated using the octets of the UTF-8 representation of the client_secret as the shared key. The Client authenticates in accordance with JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants [OAuth.JWT] and Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants [OAuth.Assertions].

      The JWT MUST contain the following REQUIRED Claim Values and MAY contain the following OPTIONAL Claim Values.

      Required: iss, sub, aud, jti, exp

      Optional: iat

    • PRIVATE_KEY_JWT

      public static final OidcConfig.ClientAuthentication PRIVATE_KEY_JWT
      Clients that have registered a public key sign a JWT using that key. The Client authenticates in accordance with JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants [OAuth.JWT] and Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants [OAuth.Assertions].

      The JWT MUST contain the following REQUIRED Claim Values and MAY contain the following OPTIONAL Claim Values.

      Required: iss, sub, aud, jti, exp

      Optional: iat

    • NONE

      public static final OidcConfig.ClientAuthentication NONE
      The Client does not authenticate itself at the Token Endpoint, either because it uses only the Implicit Flow (and so does not use the Token Endpoint) or because it is a Public Client with no Client Secret or other authentication mechanism.
  • Method Details

    • values

      public static OidcConfig.ClientAuthentication[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static OidcConfig.ClientAuthentication valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null