Class ExplicitKeySignedJWTTrustEngine

java.lang.Object
net.shibboleth.oidc.security.impl.BaseSignedJWTTrustEngine<Iterable<Credential>>
net.shibboleth.oidc.security.impl.ExplicitKeySignedJWTTrustEngine
All Implemented Interfaces:
TrustedCredentialTrustEngine<com.nimbusds.jwt.SignedJWT>, TrustEngine<com.nimbusds.jwt.SignedJWT>
Direct Known Subclasses:
ClientInformationJWTTrustEngine

public class ExplicitKeySignedJWTTrustEngine extends BaseSignedJWTTrustEngine<Iterable<Credential>> implements TrustedCredentialTrustEngine<com.nimbusds.jwt.SignedJWT>
An implementation of SignatureTrustEngine which evaluates the validity and trustworthiness of JWT signatures.

Processing is first performed as described in BaseSignedJWTTrustEngine. If based on this processing, it is determined that the token does not present or does not contain a resolveable valid (and trusted) signing key, then all trusted credentials obtained by the trusted credential resolver will be used to attempt to validate the signature.

Since:
2.2.0
  • Field Details

    • log

      private final org.slf4j.Logger log
      Class logger.
    • credentialResolver

      private final CredentialResolver credentialResolver
      Resolver used for resolving trusted credentials.
    • keyTrust

      private final ExplicitKeyTrustEvaluator keyTrust
      The external explicit key trust engine to use as a basis for trust in this implementation.
  • Constructor Details

    • ExplicitKeySignedJWTTrustEngine

      public ExplicitKeySignedJWTTrustEngine(@Nonnull @ParameterName(name="resolver") CredentialResolver resolver, @Nonnull @ParameterName(name="JOSEObjectResolver") JOSEObjectCredentialResolver joseObjectResolver)
      Constructor.
      Parameters:
      resolver - credential resolver used to resolve trusted credentials.
      joseObjectResolver - resolver which resolve credentials from the headers of a JOSEObject instance.
  • Method Details