Class RelyingPartySigningParametersResolver
java.lang.Object
org.opensaml.xmlsec.impl.AbstractSecurityParametersResolver<SignatureSigningParameters>
net.shibboleth.oidc.security.jose.impl.BasicSignatureSigningParametersResolver
net.shibboleth.oidc.security.jose.impl.RelyingPartySigningParametersResolver
- All Implemented Interfaces:
SignatureSigningParametersResolver,Resolver<SignatureSigningParameters,CriteriaSet>
A specialization of
BasicSignatureSigningParametersResolver which supports selecting signing credentials
from client_secret credential criterion (e.g. from the relying party configuration) in addition to the configured
signing credentials inside the signing configuration (determined by the superclass).
The OpenID Providers's metadata is also used to filter for those algorithms supported by the OP in addition to those supported by the security configuration.
*
In addition to the Criterion inputs documented in
BasicSignatureSigningParametersResolver, the following inputs are also supported:
ClientSecretCredentialCriterion- optionalProviderMetadataCriterion- required
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.slf4j.LoggerLogger.private Function<OIDCProviderMetadata,List<String>> A strategy to pull out the correct set of supported algorithms from theOIDCProviderMetadata. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfilterForProviderSupportedAlgorithms(CriteriaSet criteria, List<String> algorithms) Filter the set of algorithms against the set supported by the OpenID Provider.protected voidresolveAndPopulateCredentialAndSignatureAlgorithm(SignatureSigningParameters params, CriteriaSet criteria, Predicate<String> includeExcludePredicate) Resolve and populate the signing credential and signature method algorithm URI on the supplied parameters instance.voidSet the strategy used to locate the supported signing algorithms from the OP's metadata for this resolver instance.Methods inherited from class net.shibboleth.oidc.security.jose.impl.BasicSignatureSigningParametersResolver
credentialSupportsSigningAlgorithm, findCompatibleAlgorithmAndCredential, getAlgorithmRegistry, getAlgorithmRuntimeSupportedPredicate, getEffectiveSignatureAlgorithms, getEffectiveSigningCredentials, getIncludeExcludePredicate, logResult, resolve, resolveSingle, setAlgorithmRegistry, validateMethods inherited from class org.opensaml.xmlsec.impl.AbstractSecurityParametersResolver
lookupKeyInfoGenerator, resolveAndPopulateIncludesExcludes, resolveEffectiveExcludes, resolveEffectiveIncludes, resolveIncludeExcludePrecedence, resolveIncludeExcludePredicate
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logLogger. -
providerMetadataAlgorithmLookupStrategy
@Nonnull private Function<OIDCProviderMetadata,List<String>> providerMetadataAlgorithmLookupStrategyA strategy to pull out the correct set of supported algorithms from theOIDCProviderMetadata. By default returns null, signalling 'do not filter'.
-
-
Constructor Details
-
RelyingPartySigningParametersResolver
public RelyingPartySigningParametersResolver()Constructor.
-
-
Method Details
-
setProviderMetadataAlgorithmLookupStrategy
public void setProviderMetadataAlgorithmLookupStrategy(@Nonnull Function<OIDCProviderMetadata, List<String>> strategy) Set the strategy used to locate the supported signing algorithms from the OP's metadata for this resolver instance. For example, id_token or request object signing algorithms.- Parameters:
strategy- the strategy
-