Enum 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>
- 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.
-
-
Enum Constant Summary
Enum Constants Enum Constant Description 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.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.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.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.PRIVATE_KEY_JWT
Clients that have registered a public key sign a JWT using that key.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static OidcConfig.ClientAuthentication
valueOf(String name)
Returns the enum constant of this type with the specified name.static OidcConfig.ClientAuthentication[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
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 Detail
-
values
public static OidcConfig.ClientAuthentication[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (OidcConfig.ClientAuthentication c : OidcConfig.ClientAuthentication.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static OidcConfig.ClientAuthentication valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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 type has no constant with the specified nameNullPointerException
- if the argument is null
-
-