Class DefaultOpenIdTokenResponseValidator

    • Constructor Detail

      • DefaultOpenIdTokenResponseValidator

        public DefaultOpenIdTokenResponseValidator​(java.util.Collection<OpenIdClaimsValidator> idTokenValidators,
                                                   java.util.Collection<io.micronaut.security.token.jwt.validator.GenericJwtClaimsValidator> genericJwtClaimsValidators,
                                                   @Nullable
                                                   NonceClaimValidator nonceClaimValidator,
                                                   io.micronaut.security.token.jwt.signature.jwks.JwkValidator jwkValidator)
        Parameters:
        idTokenValidators - OpenID JWT claim validators
        genericJwtClaimsValidators - Generic JWT claim validators
        nonceClaimValidator - The nonce claim validator
        jwkValidator - The JWK validator
    • Method Detail

      • validate

        public java.util.Optional<com.nimbusds.jwt.JWT> validate​(OauthClientConfiguration clientConfiguration,
                                                                 OpenIdProviderMetadata openIdProviderMetadata,
                                                                 OpenIdTokenResponse openIdTokenResponse,
                                                                 @Nullable
                                                                 java.lang.String nonce)
        Specified by:
        validate in interface OpenIdTokenResponseValidator
        Parameters:
        clientConfiguration - The OAuth 2.0 client configuration
        openIdProviderMetadata - The OpenID provider metadata
        openIdTokenResponse - ID Token Access Token response
        nonce - The persisted nonce value
        Returns:
        true if the ID Token access response is considered valid
      • validateClaims

        @NonNull
        protected java.util.Optional<com.nimbusds.jwt.JWT> validateClaims​(@NonNull
                                                                          OauthClientConfiguration clientConfiguration,
                                                                          @NonNull
                                                                          OpenIdProviderMetadata openIdProviderMetadata,
                                                                          @NonNull
                                                                          com.nimbusds.jwt.JWT jwt,
                                                                          @Nullable
                                                                          java.lang.String nonce)
        Parameters:
        clientConfiguration - The OAuth 2.0 client configuration
        openIdProviderMetadata - The OpenID provider metadata
        jwt - JWT with valida signature
        nonce - The persisted nonce value
        Returns:
        the same JWT supplied as a parameter if the claims validation were succesful or empty if not.
      • parseJwtWithValidSignature

        @NonNull
        protected java.util.Optional<com.nimbusds.jwt.JWT> parseJwtWithValidSignature​(@NonNull
                                                                                      OpenIdProviderMetadata openIdProviderMetadata,
                                                                                      @NonNull
                                                                                      OpenIdTokenResponse openIdTokenResponse)
        Parameters:
        openIdProviderMetadata - The OpenID provider metadata
        openIdTokenResponse - ID Token Access Token response Uses the ID token in the OpenID connect response to extract a JSON Web token and validates its signature
        Returns:
        A JWT if the signature validation is successful
      • jwksSignatureForOpenIdProviderMetadata

        protected io.micronaut.security.token.jwt.signature.jwks.JwksSignature jwksSignatureForOpenIdProviderMetadata​(@NonNull
                                                                                                                      OpenIdProviderMetadata openIdProviderMetadata)
        Parameters:
        openIdProviderMetadata - The OpenID provider metadata
        Returns:
        A JwksSignature for the OpenID provider JWKS uri.