Class ValidateTokenSignature

    • Field Detail

      • SUPPORTED_SIGNATURE_FAMILY

        @Nonnull
        private static final com.nimbusds.jose.JWSAlgorithm.Family SUPPORTED_SIGNATURE_FAMILY
        The HMAC 'family' of signature algorithms is the only supported, based on the shared secret in the client integration.
      • log

        @Nonnull
        private final org.slf4j.Logger log
        Class logger.
      • signatureAlgorithm

        @Nonnull
        private com.nimbusds.jose.Algorithm signatureAlgorithm
        The signature algorithm used. This is fixed and not taken from the JWS. There is no reason, in the Duo case, to determine the algorithm from the JWS as HS512 is the only required algorithm.
      • token

        @Nullable
        private com.nimbusds.jwt.JWT token
        The Duo authentication token.
      • claimSet

        @Nullable
        private com.nimbusds.jwt.JWTClaimsSet claimSet
        The parsed claimset.
      • integration

        @Nullable
        private DuoOIDCIntegration integration
        The Duo integration appropriate for this request.
    • Constructor Detail

      • ValidateTokenSignature

        public ValidateTokenSignature()
        Constructor.
    • Method Detail

      • setSignatureAlgorithm

        public void setSignatureAlgorithm​(@Nonnull
                                          com.nimbusds.jose.JWSAlgorithm algo)
        Set the signature algorithm to use. Only supports one of the HMAC_SHA family.
        Parameters:
        algo - the JWS signature algorithm.
      • doExecute

        protected void doExecute​(@Nonnull
                                 ProfileRequestContext profileRequestContext,
                                 @Nonnull
                                 AuthenticationContext authenticationContext,
                                 @Nonnull
                                 DuoOIDCAuthenticationContext duoContext)
        Performs this Duo authentication action using the supplied Duo context. Implementations should override this method.
        Overrides:
        doExecute in class AbstractDuoAuthenticationAction
        Parameters:
        profileRequestContext - the current IdP profile request context
        authenticationContext - the current authentication context
        duoContext - the Duo authentication context