Class DefaultOpenIdProviderMetadata.Builder

java.lang.Object
io.micronaut.security.oauth2.client.DefaultOpenIdProviderMetadata.Builder
Enclosing class:
DefaultOpenIdProviderMetadata

public static class DefaultOpenIdProviderMetadata.Builder extends Object
Builder.
  • Constructor Details

    • Builder

      @Deprecated(forRemoval=true, since="4.5.0") public Builder()
      Deprecated, for removal: This API element is subject to removal in a future version.
    • Builder

      public Builder(String providerName)
      Parameters:
      providerName - The configured Open ID provider name
  • Method Details

    • authorizationEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder authorizationEndpoint(@Nullable @Nullable String authorizationEndpoint)
      Parameters:
      authorizationEndpoint - URL of the Open ID Provider's OAuth 2.0 Authorization Endpoint
      Returns:
      The Builder
    • idTokenSigningAlgValuesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder idTokenSigningAlgValuesSupported(@NonNull @NonNull List<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 @NonNull DefaultOpenIdProviderMetadata.Builder issuer(@NonNull @NonNull 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 @NonNull DefaultOpenIdProviderMetadata.Builder jwksUri(@NonNull @NonNull String jwksUri)
      Parameters:
      jwksUri - URL of the Open ID Provider's JSON Web Key Set
      Returns:
      The Builder
    • acrValuesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder acrValuesSupported(@NonNull @NonNull List<String> acrValuesSupported)
      Parameters:
      acrValuesSupported - List of the Authentication Context Class References that this OP supports.
      Returns:
      The Builder
    • responseTypesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder responseTypesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder responseModesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder scopesSupported(@Nullable @Nullable List<String> scopesSupported)
      Parameters:
      scopesSupported - List of the OAuth 2.0 [RFC6749] scope values that this server supports.
      Returns:
      The Builder
    • grantTypesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder grantTypesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder subjectTypesSupported(@NonNull @NonNull List<String> subjectTypesSupported)
      Parameters:
      subjectTypesSupported - List of the Subject Identifier types that this OP supports.
      Returns:
      The Builder
    • tokenEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder tokenEndpoint(@NonNull @NonNull String tokenEndpoint)
      Parameters:
      tokenEndpoint - URL of the Open ID Provider's OAuth 2.0 Token Endpoint
      Returns:
      The Builder
    • tokenEndpointAuthMethodsSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder tokenEndpointAuthMethodsSupported(@Nullable @Nullable List<String> tokenEndpointAuthMethodsSupported)
      Parameters:
      tokenEndpointAuthMethodsSupported - List of Client Authentication methods supported by this Token Endpoint.
      Returns:
      The Builder
    • userinfoEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder userinfoEndpoint(@Nullable @Nullable String userinfoEndpoint)
      Parameters:
      userinfoEndpoint - URL of the Open ID Provider's UserInfo Endpoint
      Returns:
      The Builder
    • registrationEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder registrationEndpoint(@Nullable @Nullable String registrationEndpoint)
      Parameters:
      registrationEndpoint - URL of the Open ID Provider's Dynamic Client Registration Endpoint
      Returns:
      The Builder
    • claimsSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder claimsSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder codeChallengeMethodsSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder introspectionEndpoint(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder introspectionEndpointAuthMethodsSupported(@Nullable @Nullable List<String> introspectionEndpointAuthMethodsSupported)
      Parameters:
      introspectionEndpointAuthMethodsSupported - List of Client Authentication methods supported by Introspection Endpoint
      Returns:
      The Builder
    • revocationEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder revocationEndpoint(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder revocationEndpointAuthMethodsSupported(@Nullable @Nullable List<String> revocationEndpointAuthMethodsSupported)
      Parameters:
      revocationEndpointAuthMethodsSupported - List of Client Authentication methods supported by Revocation Endpoint
      Returns:
      The Builder
    • endSessionEndpoint

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder endSessionEndpoint(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder requestParameterSupported(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder requestUriParameterSupported(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder requireRequestUriRegistration(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder requestObjectSigningAlgValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder serviceDocumentation(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder idTokenEncryptionEncValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder displayValuesSupported(@Nullable @Nullable List<String> displayValuesSupported)
      Parameters:
      displayValuesSupported - List of the display parameter values that the OpenID Provider supports.
      Returns:
      The Builder
    • claimTypesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder claimTypesSupported(@Nullable @Nullable List<String> claimTypesSupported)
      Parameters:
      claimTypesSupported - List of the Claim Types that the OpenID Provider supports.
      Returns:
      The Builder
    • claimsParameterSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder claimsParameterSupported(@NonNull @NonNull Boolean claimsParameterSupported)
      Parameters:
      claimsParameterSupported - Boolean value specifying whether the OP supports use of the claims parameter.
      Returns:
      The Builder
    • opTosUri

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder opTosUri(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder opPolicyUri(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata.Builder uriLocalesSupported(@Nullable @Nullable List<String> uriLocalesSupported)
      Parameters:
      uriLocalesSupported - Languages and scripts supported for the user interface
      Returns:
      The Builder
    • claimsLocalesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder claimsLocalesSupported(@Nullable @Nullable List<String> claimsLocalesSupported)
      Parameters:
      claimsLocalesSupported - Languages and scripts supported for values in Claims
      Returns:
      The Builder
    • userinfoEncryptionAlgValuesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder userinfoEncryptionAlgValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder userinfoEncryptionEncValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder tokenEndpointAuthSigningAlgValuesSupported(@Nullable @Nullable List<String> tokenEndpointAuthSigningAlgValuesSupported)
      Parameters:
      tokenEndpointAuthSigningAlgValuesSupported - List of the JWS signing algorithms (alg values) supported by the Token Endpoint.
      Returns:
      The Builder
    • requestObjectEncryptionAlgValuesSupported

      @NonNull public @NonNull DefaultOpenIdProviderMetadata.Builder requestObjectEncryptionAlgValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder requestObjectEncryptionEncValuesSupported(@Nullable @Nullable List<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 @NonNull DefaultOpenIdProviderMetadata.Builder checkSessionIframe(@Nullable @Nullable 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 @NonNull DefaultOpenIdProviderMetadata build()
      Returns:
      a DefaultOpenIdProviderMetadata instance.