Class DefaultOpenIdProviderMetadata.Builder
- java.lang.Object
-
- io.micronaut.security.oauth2.client.DefaultOpenIdProviderMetadata.Builder
-
- Enclosing class:
- DefaultOpenIdProviderMetadata
public static class DefaultOpenIdProviderMetadata.Builder extends java.lang.ObjectBuilder.
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
authorizationEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder authorizationEndpoint(@Nullable java.lang.String authorizationEndpoint)
- Parameters:
authorizationEndpoint- URL of the Open ID Provider's OAuth 2.0 Authorization Endpoint- Returns:
- The Builder
-
idTokenSigningAlgValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder idTokenSigningAlgValuesSupported(@NonNull java.util.List<java.lang.String> idTokenSigningAlgValuesSupported)
- Parameters:
idTokenSigningAlgValuesSupported- List of the JWS signing algorithms (alg values) supported by the OP for the ID Token to encode the Claims in a JWT [JWT].- Returns:
- The Builder
-
issuer
@NonNull public DefaultOpenIdProviderMetadata.Builder issuer(@NonNull java.lang.String issuer)
- Parameters:
issuer- URL using the https scheme with no query or fragment component that the Open ID Provider asserts as its Issuer Identifier.- Returns:
- The Builder
-
jwksUri
@NonNull public DefaultOpenIdProviderMetadata.Builder jwksUri(@NonNull java.lang.String jwksUri)
- Parameters:
jwksUri- URL of the Open ID Provider's JSON Web Key Set- Returns:
- The Builder
-
acrValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder acrValuesSupported(@NonNull java.util.List<java.lang.String> acrValuesSupported)
- Parameters:
acrValuesSupported- List of the Authentication Context Class References that this OP supports.- Returns:
- The Builder
-
responseTypesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder responseTypesSupported(@Nullable java.util.List<java.lang.String> responseTypesSupported)
- Parameters:
responseTypesSupported- List of the OAuth 2.0 response_type values that this Open ID Provider supports.- Returns:
- The Builder
-
responseModesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder responseModesSupported(@Nullable java.util.List<java.lang.String> responseModesSupported)
- Parameters:
responseModesSupported- List of the OAuth 2.0 response_mode values that this Open ID Provider supports.- Returns:
- The Builder
-
scopesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder scopesSupported(@Nullable java.util.List<java.lang.String> scopesSupported)
- Parameters:
scopesSupported- List of the OAuth 2.0 [RFC6749] scope values that this server supports.- Returns:
- The Builder
-
grantTypesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder grantTypesSupported(@Nullable java.util.List<java.lang.String> grantTypesSupported)
- Parameters:
grantTypesSupported- List of the OAuth 2.0 Grant Type values that this Open ID Provider supports.- Returns:
- The Builder
-
subjectTypesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder subjectTypesSupported(@NonNull java.util.List<java.lang.String> subjectTypesSupported)
- Parameters:
subjectTypesSupported- List of the Subject Identifier types that this OP supports.- Returns:
- The Builder
-
tokenEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder tokenEndpoint(@NonNull java.lang.String tokenEndpoint)
- Parameters:
tokenEndpoint- URL of the Open ID Provider's OAuth 2.0 Token Endpoint- Returns:
- The Builder
-
tokenEndpointAuthMethodsSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder tokenEndpointAuthMethodsSupported(@Nullable java.util.List<java.lang.String> tokenEndpointAuthMethodsSupported)
- Parameters:
tokenEndpointAuthMethodsSupported- List of Client Authentication methods supported by this Token Endpoint.- Returns:
- The Builder
-
userinfoEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder userinfoEndpoint(@Nullable java.lang.String userinfoEndpoint)
- Parameters:
userinfoEndpoint- URL of the Open ID Provider's UserInfo Endpoint- Returns:
- The Builder
-
registrationEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder registrationEndpoint(@Nullable java.lang.String registrationEndpoint)
- Parameters:
registrationEndpoint- URL of the Open ID Provider's Dynamic Client Registration Endpoint- Returns:
- The Builder
-
claimsSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder claimsSupported(@Nullable java.util.List<java.lang.String> claimsSupported)
- Parameters:
claimsSupported- List of the Claim Names of the Claims that the OpenID Provider MAY be able to supply values for.- Returns:
- The Builder
-
codeChallengeMethodsSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder codeChallengeMethodsSupported(@Nullable java.util.List<java.lang.String> codeChallengeMethodsSupported)
- Parameters:
codeChallengeMethodsSupported- List of the supported transformation methods by the authorisation code verifier for Proof Key for Code Exchange (PKCE).- Returns:
- The Builder
-
introspectionEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder introspectionEndpoint(@Nullable java.lang.String introspectionEndpoint)
- Parameters:
introspectionEndpoint- The fully qualified URL of the server's introspection endpoint defined by OAuth Token Introspection [RFC7662]- Returns:
- The Builder
-
introspectionEndpointAuthMethodsSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder introspectionEndpointAuthMethodsSupported(@Nullable java.util.List<java.lang.String> introspectionEndpointAuthMethodsSupported)
- Parameters:
introspectionEndpointAuthMethodsSupported- List of Client Authentication methods supported by Introspection Endpoint- Returns:
- The Builder
-
revocationEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder revocationEndpoint(@Nullable java.lang.String revocationEndpoint)
- Parameters:
revocationEndpoint- The fully qualified URL of the server's revocation endpoint defined by Oauth Token Revocation.- Returns:
- The Builder
-
revocationEndpointAuthMethodsSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder revocationEndpointAuthMethodsSupported(@Nullable java.util.List<java.lang.String> revocationEndpointAuthMethodsSupported)
- Parameters:
revocationEndpointAuthMethodsSupported- List of Client Authentication methods supported by Revocation Endpoint- Returns:
- The Builder
-
endSessionEndpoint
@NonNull public DefaultOpenIdProviderMetadata.Builder endSessionEndpoint(@Nullable java.lang.String endSessionEndpoint)
- Parameters:
endSessionEndpoint- URL at the OP to which an RP can perform a redirect to request that the End-User be logged out at the OP.- Returns:
- The Builder
-
requestParameterSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder requestParameterSupported(@Nullable java.lang.Boolean requestParameterSupported)
- Parameters:
requestParameterSupported- Boolean value specifying whether the OP supports use of the request parameter, with true indicating support.- Returns:
- The Builder
-
requestUriParameterSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder requestUriParameterSupported(@Nullable java.lang.Boolean requestUriParameterSupported)
- Parameters:
requestUriParameterSupported- Boolean value specifying whether the OP supports use of the request_uri parameter, with true indicating support.- Returns:
- The Builder
-
requireRequestUriRegistration
@NonNull public DefaultOpenIdProviderMetadata.Builder requireRequestUriRegistration(@Nullable java.lang.Boolean requireRequestUriRegistration)
- Parameters:
requireRequestUriRegistration- Boolean value specifying whether the OP requires any request_uri values used to be pre-registered using the request_uris registration parameter. Pre-registration is REQUIRED when the value is true. If omitted, the default value is false.- Returns:
- The Builder
-
requestObjectSigningAlgValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder requestObjectSigningAlgValuesSupported(@Nullable java.util.List<java.lang.String> requestObjectSigningAlgValuesSupported)
- Parameters:
requestObjectSigningAlgValuesSupported- List of the JWS signing algorithms (alg values) supported by the OP for Request Objects.- Returns:
- The Builder
-
serviceDocumentation
@NonNull public DefaultOpenIdProviderMetadata.Builder serviceDocumentation(@Nullable java.lang.String serviceDocumentation)
- Parameters:
serviceDocumentation- URL of a page containing human-readable information that developers might want or need to know when using the OpenID Provider.- Returns:
- The Builder
-
idTokenEncryptionEncValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder idTokenEncryptionEncValuesSupported(@Nullable java.util.List<java.lang.String> idTokenEncryptionEncValuesSupported)
- Parameters:
idTokenEncryptionEncValuesSupported- List of the JWE encryption algorithms (enc values) supported by the OP for the ID Token to encode the Claims in a JWT [JWT].- Returns:
- The Builder
-
displayValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder displayValuesSupported(@Nullable java.util.List<java.lang.String> displayValuesSupported)
- Parameters:
displayValuesSupported- List of the display parameter values that the OpenID Provider supports.- Returns:
- The Builder
-
claimTypesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder claimTypesSupported(@Nullable java.util.List<java.lang.String> claimTypesSupported)
- Parameters:
claimTypesSupported- List of the Claim Types that the OpenID Provider supports.- Returns:
- The Builder
-
claimsParameterSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder claimsParameterSupported(@NonNull java.lang.Boolean claimsParameterSupported)
- Parameters:
claimsParameterSupported- Boolean value specifying whether the OP supports use of the claims parameter.- Returns:
- The Builder
-
opTosUri
@NonNull public DefaultOpenIdProviderMetadata.Builder opTosUri(@Nullable java.lang.String opTosUri)
- Parameters:
opTosUri- URL that the OpenID Provider provides to the person registering the Client to read about OpenID Provider's terms of service.- Returns:
- The Builder
-
opPolicyUri
@NonNull public DefaultOpenIdProviderMetadata.Builder opPolicyUri(@Nullable java.lang.String opPolicyUri)
- Parameters:
opPolicyUri- URL that the OpenID Provider provides to the person registering the Client to read about the OP's requirements on how the Relying Party can use the data provided by the OP.- Returns:
- The Builder
-
uriLocalesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder uriLocalesSupported(@Nullable java.util.List<java.lang.String> uriLocalesSupported)
- Parameters:
uriLocalesSupported- Languages and scripts supported for the user interface- Returns:
- The Builder
-
claimsLocalesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder claimsLocalesSupported(@Nullable java.util.List<java.lang.String> claimsLocalesSupported)
- Parameters:
claimsLocalesSupported- Languages and scripts supported for values in Claims- Returns:
- The Builder
-
userinfoEncryptionAlgValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder userinfoEncryptionAlgValuesSupported(@Nullable java.util.List<java.lang.String> userinfoEncryptionAlgValuesSupported)
- Parameters:
userinfoEncryptionAlgValuesSupported- List of the JWE [JWE] encryption algorithms (alg values) [JWA] supported by the UserInfo Endpoint to encode the Claims in a JWT [JWT].- Returns:
- The Builder
-
userinfoEncryptionEncValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder userinfoEncryptionEncValuesSupported(@Nullable java.util.List<java.lang.String> userinfoEncryptionEncValuesSupported)
- Parameters:
userinfoEncryptionEncValuesSupported- List of the JWE encryption algorithms (enc values) [JWA] supported by the UserInfo Endpoint to encode the Claims in a JWT [JWT].- Returns:
- The Builder
-
tokenEndpointAuthSigningAlgValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder tokenEndpointAuthSigningAlgValuesSupported(@Nullable java.util.List<java.lang.String> tokenEndpointAuthSigningAlgValuesSupported)
- Parameters:
tokenEndpointAuthSigningAlgValuesSupported- List of the JWS signing algorithms (alg values) supported by the Token Endpoint.- Returns:
- The Builder
-
requestObjectEncryptionAlgValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder requestObjectEncryptionAlgValuesSupported(@Nullable java.util.List<java.lang.String> requestObjectEncryptionAlgValuesSupported)
- Parameters:
requestObjectEncryptionAlgValuesSupported- list of the JWE encryption algorithms (alg values) supported by the OP for Request Objects.- Returns:
- The Builder
-
requestObjectEncryptionEncValuesSupported
@NonNull public DefaultOpenIdProviderMetadata.Builder requestObjectEncryptionEncValuesSupported(@Nullable java.util.List<java.lang.String> requestObjectEncryptionEncValuesSupported)
- Parameters:
requestObjectEncryptionEncValuesSupported- List of the JWE encryption algorithms (enc values) supported by the OP for Request Objects.- Returns:
- The Builder
-
checkSessionIframe
@NonNull public DefaultOpenIdProviderMetadata.Builder checkSessionIframe(@Nullable java.lang.String checkSessionIframe)
- Parameters:
checkSessionIframe- URL of an OP iframe that supports cross-origin communications for session state information with the RP Client, using the HTML5 postMessage API.- Returns:
- The Builder
-
build
@NonNull public DefaultOpenIdProviderMetadata build()
- Returns:
- a
DefaultOpenIdProviderMetadatainstance.
-
-