Class AbstractOIDCSSOConfiguration
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.profile.config.AbstractProfileConfiguration
net.shibboleth.profile.config.AbstractConditionalProfileConfiguration
net.shibboleth.idp.profile.config.AbstractInterceptorAwareProfileConfiguration
net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2InterceptorAwareProfileConfiguration
net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2ClientAuthenticableProfileConfiguration
net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2FlowAwareProfileConfiguration
net.shibboleth.oidc.profile.config.impl.AbstractOIDCSSOConfiguration
- All Implemented Interfaces:
AuthenticationProfileConfiguration,InterceptorAwareProfileConfiguration,OIDCFlowAwareProfileConfiguration,OIDCIDTokenProducingProfileConfiguration,OIDCProfileConfiguration,OIDCSSOProfileConfiguration,OIDCSSOProviderConfiguration,OIDCSSORelyingPartyConfiguration,OAuth2AccessTokenProducingProfileConfiguration,OAuth2ClientAuthenticableClientProfileConfiguration,OAuth2ClientAuthenticableProfileConfiguration,OAuth2DPoPProofValidatingProfileConfiguration,OAuth2FlowAwareProfileConfiguration,OAuth2InterceptorAwareProfileConfiguration,OAuth2ProfileConfiguration,OAuth2RefreshTokenProducingProfileConfiguration,OAuth2ScopeValidatingProfileConfiguration,OAuth2TokenEncryptionProfileConfiguration,AttributeResolvingProfileConfiguration,ConditionalProfileConfiguration,OverriddenIssuerProfileConfiguration,ProfileConfiguration,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
- Direct Known Subclasses:
DefaultOAuth2TokenConfiguration,DefaultOIDCAuthorizationConfiguration
public abstract class AbstractOIDCSSOConfiguration
extends AbstractOAuth2FlowAwareProfileConfiguration
implements OIDCSSORelyingPartyConfiguration, OIDCSSOProviderConfiguration
Base class for profiles that support OIDC's concept of SSO, which spans multiple endpoints.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Function<ProfileRequestContext,BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> Lookup function to supply strategy bi-function for manipulating access token claims set.private Function<ProfileRequestContext,Duration> Lookup function to supply access token lifetime.private Function<ProfileRequestContext,String> Lookup function to supply access token type.private Predicate<ProfileRequestContext>Whether client is allowed to use PKCE code challenge method plain.private Function<ProfileRequestContext,Set<String>> Lookup function to supply attribute IDs to include in ID token regardless of response_type.private Predicate<ProfileRequestContext>Whether the access token to be issued is always a bearer access token.private Function<ProfileRequestContext,Set<String>> Lookup function to supply additional audiences for ID token.Lookup function to supply strategy bi-predicate for custom valdation of redirect URI in the request.private Predicate<ProfileRequestContext>Whether encryption is optional in the face of no key, etc.private Predicate<ProfileRequestContext>Whether client is required to use PKCE.private Function<ProfileRequestContext,Duration> Lookup function to supply ID token lifetime.private Function<ProfileRequestContext,BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> Lookup function to supply strategy bi-function for manipulating id_token claims.private Function<ProfileRequestContext,String> Lookup function to override issuer value.private Function<ProfileRequestContext,Duration> Lookup function to supply refresh token chain lifetime.private Function<ProfileRequestContext,Duration> Lookup function to supply refresh token timeout.private Function<ProfileRequestContext,String> Lookup function to supply refresh token type.private Predicate<ProfileRequestContext>Whether attributes should be resolved in the course of the profile.private Predicate<ProfileRequestContext>Whether scope validation is strict, i.e.Fields inherited from interface net.shibboleth.oidc.profile.config.OIDCSSOProfileConfiguration
PROFILE_IDFields inherited from interface net.shibboleth.profile.config.ProfileConfiguration
DEFAULT_DISALLOWED_FEATURES -
Constructor Summary
ConstructorsConstructorDescriptionAbstractOIDCSSOConfiguration(String profileId) Creates a new configuration instance. -
Method Summary
Modifier and TypeMethodDescriptiongetAccessTokenClaimsSetManipulationStrategy(ProfileRequestContext profileRequestContext) Get the bi-function for manipulating access token claims set.getAccessTokenLifetime(ProfileRequestContext profileRequestContext) Get access token lifetime.getAccessTokenType(ProfileRequestContext profileRequestContext) Get access token type.getAdditionalAudiencesForIdToken(ProfileRequestContext profileRequestContext) Get the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.getAlwaysIncludedAttributes(ProfileRequestContext profileRequestContext) Get the set of attribute IDs which should be included in the ID token regardless of response_type.getCustomRedirectUriValidationStrategy(ProfileRequestContext profileRequestContext) Get the bi-predicate for validating redirect URI in request to the current profile request context state.getIDTokenLifetime(ProfileRequestContext profileRequestContext) Get ID token lifetime.getIDTokenManipulationStrategy(ProfileRequestContext profileRequestContext) Get the bi-function for manipulating id_token claims.getIssuer(ProfileRequestContext profileRequestContext) getRefreshTokenChainLifetime(ProfileRequestContext profileRequestContext) Get refresh token chain lifetime.getRefreshTokenTimeout(ProfileRequestContext profileRequestContext) Get refresh token timeout.getRefreshTokenType(ProfileRequestContext profileRequestContext) Get refresh token type.booleanisAllowPKCEPlain(ProfileRequestContext profileRequestContext) Get whether client is allowed to use PKCE code challenge method plain.booleanisAlwaysIssueBearerAccessToken(ProfileRequestContext profileRequestContext) Get whether the access token to be issued is always a bearer access token.booleanisEncryptionOptional(ProfileRequestContext profileRequestContext) Get whether encryption is optional in the face of a missing key, etc.booleanisForcePKCE(ProfileRequestContext profileRequestContext) Get whether client is required to use PKCE.booleanisResolveAttributes(ProfileRequestContext profileRequestContext) booleanisStrictScopeValidation(ProfileRequestContext profileRequestContext) Get whether scope validation is strict, i.e.voidsetAccessTokenClaimsSetManipulationStrategy(BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>> strategy) Set the bi-function for manipulating access token claims set.voidsetAccessTokenClaimsSetManipulationStrategyLookupStrategy(Function<ProfileRequestContext, BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> strategy) Set a lookup strategy for the bi-function for manipulating access token claims set.voidsetAccessTokenLifetime(Duration lifetime) Set the lifetime of an access token.voidSet a lookup strategy for the access token lifetime.voidsetAccessTokenType(String type) Set access token type.voidSet lookup strategy for access token type.voidsetAdditionalAudiencesForIdToken(Collection<String> audiences) Set the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.voidsetAdditionalAudiencesForIdTokenLookupStrategy(Function<ProfileRequestContext, Set<String>> strategy) Set a lookup strategy for the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.voidsetAllowPKCEPlain(boolean flag) Set whether client is allowed to use PKCE code challenge method plain.voidsetAllowPKCEPlainPredicate(Predicate<ProfileRequestContext> condition) Set condition for whether client is allowed to use PKCE code challenge method plain.voidsetAlwaysIncludedAttributes(Collection<String> attributes) Set the set of attribute IDs which should be included in the ID token regardless of response_type.voidSet a lookup strategy for the attribute IDs which should be included in the ID token regardless of response_type.voidsetAlwaysIssueBearerAccessToken(boolean flag) Set whether the access token to be issued is always a bearer access token.voidSet a condition to determine whether the access token to be issued is always a bearer access token.voidSet the bi-predicate for custom validation of redirect URI in the request.voidsetCustomRedirectUriValidationStrategyLookupStrategy(Function<ProfileRequestContext, BiPredicate<URI, ProfileRequestContext>> strategy) Set a lookup strategy for the bi-predicate for custom validation of redirect URI in the request.voidsetEncryptionOptional(boolean flag) Set whether encryption is optional in the face of a missing key, etc.voidSet a condition to determine whether encryption is optional in the face of a missing key, etc.voidsetForcePKCE(boolean flag) Set whether client is required to use PKCE.voidsetForcePKCEPredicate(Predicate<ProfileRequestContext> condition) Set condition for whether client is required to use PKCE.voidsetIDTokenLifetime(Duration lifetime) Set the lifetime of an id token.voidSet a lookup strategy for the ID token lifetime.voidsetIDTokenManipulationStrategy(BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>> strategy) Set the bi-function for manipulating id_token claims.voidsetIDTokenManipulationStrategyLookupStrategy(Function<ProfileRequestContext, BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> strategy) Set a lookup strategy for the bi-function for manipulating id_token claims.voidSet overridden issuer value.voidSets lookup strategy for overridden issuer value.voidsetRefreshTokenChainLifetime(Duration lifetime) Set the lifetime of refresh token chain.voidSet a lookup strategy for the refresh token chain lifetime.voidsetRefreshTokenTimeout(Duration timeout) Set the timeout of refresh token.voidSet a lookup strategy for the refresh token timeout.voidsetRefreshTokenType(String type) Set refresh token type.voidSet lookup strategy for token token type.voidsetResolveAttributes(boolean flag) Set whether attributes should be resolved during the profile.voidSet a condition to determine whether attributes should be resolved during the profile.voidsetStrictScopeValidation(boolean flag) Set whether scope validation is strict, i.e.voidSet a condition to determine whether scope validation is strict, i.e.Methods inherited from class net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2FlowAwareProfileConfiguration
isAuthorizationCodeFlowEnabled, isHybridFlowEnabled, isImplicitFlowEnabled, isRefreshTokensEnabled, setAuthorizationCodeFlowEnabled, setAuthorizationCodeFlowEnabledPredicate, setHybridFlowEnabled, setHybridFlowEnabledPredicate, setImplicitFlowEnabled, setImplicitFlowEnabledPredicate, setRefreshTokensEnabled, setRefreshTokensEnabledPredicateMethods inherited from class net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2ClientAuthenticableProfileConfiguration
getAuthenticationFlows, getClaimsValidator, getClientCredential, getClientId, getDefaultAuthenticationMethods, getDpopProofClaimsValidator, getDpopProofNonceGenerator, getDpopProofSignatureValidationConfiguration, getPostAuthenticationFlows, getProxyCount, getTokenEndpointAuthMethod, getTokenEndpointAuthMethods, getUnregisteredClientPolicy, isForceAuthn, isRequireDpopProof, setAuthenticationFlows, setAuthenticationFlowsLookupStrategy, setClaimsValidator, setClaimsValidatorLookupStrategy, setClientCredential, setClientCredentialLookupStrategy, setClientId, setClientIdLookupStrategy, setDefaultAuthenticationMethods, setDefaultAuthenticationMethodsLookupStrategy, setDpopProofClaimsValidator, setDpopProofClaimsValidatorLookupStrategy, setDpopProofNonceGenerator, setDpopProofNonceGeneratorLookupStrategy, setDpopProofSignatureValidationConfiguration, setDpopProofSignatureValidationConfigurationLookupStrategy, setForceAuthn, setForceAuthnPredicate, setPostAuthenticationFlows, setPostAuthenticationFlowsLookupStrategy, setProxyCount, setProxyCountLookupStrategy, setRequireDpopProof, setRequireDpopProofPredicate, setTokenEndpointAuthMethod, setTokenEndpointAuthMethodLookupStrategy, setTokenEndpointAuthMethods, setTokenEndpointAuthMethodsLookupStrategy, setUnregisteredClientPolicy, setUnregisteredClientPolicyLookupStrategyMethods inherited from class net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2InterceptorAwareProfileConfiguration
getMessageHandler, setMessageHandler, setMessageHandlerLookupStrategyMethods inherited from class net.shibboleth.idp.profile.config.AbstractInterceptorAwareProfileConfiguration
getInboundInterceptorFlows, getOutboundInterceptorFlows, setInboundInterceptorFlows, setInboundInterceptorFlowsLookupStrategy, setOutboundInterceptorFlows, setOutboundInterceptorFlowsLookupStrategyMethods inherited from class net.shibboleth.profile.config.AbstractConditionalProfileConfiguration
getActivationCondition, setActivationConditionMethods inherited from class net.shibboleth.profile.config.AbstractProfileConfiguration
equals, getDisallowedFeatures, getSecurityConfiguration, hashCode, isFeatureDisallowed, setDisallowedFeatures, setDisallowedFeaturesLookupStrategy, setSecurityConfiguration, setSecurityConfigurationLookupStrategyMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
doInitialize, ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentExceptionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.idp.authn.config.AuthenticationProfileConfiguration
getAuthenticationFlows, getDefaultAuthenticationMethods, getPostAuthenticationFlows, getProxyCount, isForceAuthn, isLocalMethods inherited from interface net.shibboleth.profile.config.ConditionalProfileConfiguration
getActivationConditionMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.idp.profile.config.InterceptorAwareProfileConfiguration
getInboundInterceptorFlows, getOutboundInterceptorFlowsMethods inherited from interface net.shibboleth.oidc.profile.oauth2.config.OAuth2ClientAuthenticableClientProfileConfiguration
getClientCredential, getClientId, getTokenEndpointAuthMethodMethods inherited from interface net.shibboleth.oidc.profile.oauth2.config.OAuth2ClientAuthenticableProfileConfiguration
getClaimsValidator, getTokenEndpointAuthMethods, getUnregisteredClientPolicyMethods inherited from interface net.shibboleth.oidc.profile.oauth2.config.OAuth2DPoPProofValidatingProfileConfiguration
getDpopProofClaimsValidator, getDpopProofNonceGenerator, getDpopProofSignatureValidationConfiguration, isRequireDpopProofMethods inherited from interface net.shibboleth.oidc.profile.oauth2.config.OAuth2FlowAwareProfileConfiguration
isAuthorizationCodeFlowEnabled, isImplicitFlowEnabled, isRefreshTokensEnabledMethods inherited from interface net.shibboleth.oidc.profile.config.OIDCFlowAwareProfileConfiguration
isHybridFlowEnabledMethods inherited from interface net.shibboleth.profile.config.ProfileConfiguration
getDisallowedFeatures, getSecurityConfiguration, isFeatureDisallowed
-
Field Details
-
issuerLookupStrategy
Lookup function to override issuer value. -
resolveAttributesPredicate
Whether attributes should be resolved in the course of the profile. -
encryptionOptionalPredicate
Whether encryption is optional in the face of no key, etc. -
forcePKCEPredicate
Whether client is required to use PKCE. -
allowPKCEPlainPredicate
Whether client is allowed to use PKCE code challenge method plain. -
idTokenLifetimeLookupStrategy
Lookup function to supply ID token lifetime. -
accessTokenTypeLookupStrategy
Lookup function to supply access token type. -
refreshTokenTypeLookupStrategy
Lookup function to supply refresh token type. -
accessTokenLifetimeLookupStrategy
Lookup function to supply access token lifetime. -
refreshTokenTimeoutLookupStrategy
Lookup function to supply refresh token timeout. -
refreshTokenChainLifetimeLookupStrategy
Lookup function to supply refresh token chain lifetime. -
assertionAudiencesLookupStrategy
Lookup function to supply additional audiences for ID token. -
alwaysIncludedAttributesLookupStrategy
Lookup function to supply attribute IDs to include in ID token regardless of response_type. -
idTokenManipulationStrategyLookupStrategy
@Nonnull private Function<ProfileRequestContext,BiFunction<ProfileRequestContext, idTokenManipulationStrategyLookupStrategyMap<String, Object>, Map<String, Object>>> Lookup function to supply strategy bi-function for manipulating id_token claims. -
accessTokenClaimsSetManipulationStrategyLookupStrategy
@Nonnull private Function<ProfileRequestContext,BiFunction<ProfileRequestContext, accessTokenClaimsSetManipulationStrategyLookupStrategyMap<String, Object>, Map<String, Object>>> Lookup function to supply strategy bi-function for manipulating access token claims set. -
customRedirectUriValidationStrategyLookupStrategy
@Nonnull private Function<ProfileRequestContext,BiPredicate<URI, customRedirectUriValidationStrategyLookupStrategyProfileRequestContext>> Lookup function to supply strategy bi-predicate for custom valdation of redirect URI in the request. -
alwaysIssueBearerAccessTokenPredicate
Whether the access token to be issued is always a bearer access token. -
strictScopeValidationPredicate
Whether scope validation is strict, i.e. request for unallowed scopes is an error.
-
-
Constructor Details
-
AbstractOIDCSSOConfiguration
Creates a new configuration instance.- Parameters:
profileId- Unique profile identifier.
-
-
Method Details
-
getIssuer
- Specified by:
getIssuerin interfaceOverriddenIssuerProfileConfiguration
-
setIssuer
Set overridden issuer value.- Parameters:
issuer- issuer value
-
setIssuerLookupStrategy
Sets lookup strategy for overridden issuer value.- Parameters:
strategy- lookup strategy
-
isResolveAttributes
- Specified by:
isResolveAttributesin interfaceAttributeResolvingProfileConfiguration
-
setResolveAttributes
public void setResolveAttributes(boolean flag) Set whether attributes should be resolved during the profile.- Parameters:
flag- flag to set
-
setResolveAttributesPredicate
Set a condition to determine whether attributes should be resolved during the profile.- Parameters:
condition- condition to set
-
isEncryptionOptional
Get whether encryption is optional in the face of a missing key, etc.- Specified by:
isEncryptionOptionalin interfaceOAuth2TokenEncryptionProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff encryption is optional
-
setEncryptionOptional
public void setEncryptionOptional(boolean flag) Set whether encryption is optional in the face of a missing key, etc.- Parameters:
flag- flag to set
-
setEncryptionOptionalPredicate
Set a condition to determine whether encryption is optional in the face of a missing key, etc.- Parameters:
condition- condition to set
-
isForcePKCE
Get whether client is required to use PKCE.- Specified by:
isForcePKCEin interfaceOIDCSSOProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- whether client is required to use PKCE
-
setForcePKCE
public void setForcePKCE(boolean flag) Set whether client is required to use PKCE.- Parameters:
flag- flag to set
-
setForcePKCEPredicate
Set condition for whether client is required to use PKCE.- Parameters:
condition- condition to set
-
isAllowPKCEPlain
Get whether client is allowed to use PKCE code challenge method plain.- Specified by:
isAllowPKCEPlainin interfaceOIDCSSOProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- whether client is allowed to use PKCE code challenge method plain
-
setAllowPKCEPlain
public void setAllowPKCEPlain(boolean flag) Set whether client is allowed to use PKCE code challenge method plain.- Parameters:
flag- flag to set
-
setAllowPKCEPlainPredicate
Set condition for whether client is allowed to use PKCE code challenge method plain.- Parameters:
condition- condition to set
-
getIDTokenLifetime
@Positive @Nonnull public Duration getIDTokenLifetime(@Nullable ProfileRequestContext profileRequestContext) Get ID token lifetime.Defaults to 1 hour.
- Specified by:
getIDTokenLifetimein interfaceOIDCIDTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- ID token lifetime
-
setIDTokenLifetime
Set the lifetime of an id token.- Parameters:
lifetime- lifetime of an id token in milliseconds
-
setIDTokenLifetimeLookupStrategy
public void setIDTokenLifetimeLookupStrategy(@Nonnull Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the ID token lifetime.- Parameters:
strategy- lookup strategy
-
getAccessTokenType
@Nullable @NotEmpty public String getAccessTokenType(@Nullable ProfileRequestContext profileRequestContext) Get access token type.- Specified by:
getAccessTokenTypein interfaceOAuth2AccessTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- access token type, or null for unspecified/opaque
-
setAccessTokenType
Set access token type.- Parameters:
type- token type, or null for unspecified/opaque- Since:
- 2.1.0
-
setAccessTokenTypeLookupStrategy
public void setAccessTokenTypeLookupStrategy(@Nonnull Function<ProfileRequestContext, String> strategy) Set lookup strategy for access token type.- Parameters:
strategy- lookup strategy- Since:
- 2.1.0
-
getAccessTokenLifetime
@Positive @Nonnull public Duration getAccessTokenLifetime(@Nullable ProfileRequestContext profileRequestContext) Get access token lifetime.Defaults to 10 minutes.
- Specified by:
getAccessTokenLifetimein interfaceOAuth2AccessTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- access token lifetime
-
setAccessTokenLifetime
Set the lifetime of an access token.- Parameters:
lifetime- lifetime of an access token in milliseconds
-
setAccessTokenLifetimeLookupStrategy
public void setAccessTokenLifetimeLookupStrategy(@Nullable Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the access token lifetime.- Parameters:
strategy- lookup strategy
-
getRefreshTokenTimeout
@Nonnull @Positive public Duration getRefreshTokenTimeout(@Nullable ProfileRequestContext profileRequestContext) Get refresh token timeout. The expiration of a single refresh token is calculated based on this value.Defaults to 2 hours.
- Specified by:
getRefreshTokenTimeoutin interfaceOAuth2RefreshTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- refresh token timeout
-
setRefreshTokenTimeout
Set the timeout of refresh token.- Parameters:
timeout- timeout of an refresh token- Since:
- 2.2.0
-
setRefreshTokenTimeoutLookupStrategy
public void setRefreshTokenTimeoutLookupStrategy(@Nullable Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the refresh token timeout.- Parameters:
strategy- lookup strategy- Since:
- 2.2.0
-
getRefreshTokenChainLifetime
@Nonnull @Positive public Duration getRefreshTokenChainLifetime(@Nullable ProfileRequestContext profileRequestContext) Get refresh token chain lifetime. The expiration of a single refresh token is calculated based on this value.Defaults to 2 hours.
- Specified by:
getRefreshTokenChainLifetimein interfaceOAuth2RefreshTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- refresh token timeout
-
setRefreshTokenChainLifetime
Set the lifetime of refresh token chain.- Parameters:
lifetime- lifetime of a refresh token chain- Since:
- 2.2.0
-
setRefreshTokenChainLifetimeLookupStrategy
public void setRefreshTokenChainLifetimeLookupStrategy(@Nullable Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the refresh token chain lifetime.- Parameters:
strategy- lookup strategy- Since:
- 2.2.0
-
getRefreshTokenType
@Nullable @NotEmpty public String getRefreshTokenType(@Nullable ProfileRequestContext profileRequestContext) Get refresh token type.- Specified by:
getRefreshTokenTypein interfaceOAuth2RefreshTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- refresh token type, or null for unspecified/opaque
-
setRefreshTokenType
Set refresh token type.- Parameters:
type- token type, or null for unspecified/opaque- Since:
- 3.1.0
-
setRefreshTokenTypeLookupStrategy
public void setRefreshTokenTypeLookupStrategy(@Nonnull Function<ProfileRequestContext, String> strategy) Set lookup strategy for token token type.- Parameters:
strategy- lookup strategy- Since:
- 3.1.0
-
getAdditionalAudiencesForIdToken
@Nonnull @NonnullElements @NotLive public Set<String> getAdditionalAudiencesForIdToken(@Nullable ProfileRequestContext profileRequestContext) Get the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.- Specified by:
getAdditionalAudiencesForIdTokenin interfaceOIDCIDTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the additional audiences
-
setAdditionalAudiencesForIdToken
public void setAdditionalAudiencesForIdToken(@Nullable @NonnullElements Collection<String> audiences) Set the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.- Parameters:
audiences- the additional audiences
-
setAdditionalAudiencesForIdTokenLookupStrategy
public void setAdditionalAudiencesForIdTokenLookupStrategy(@Nonnull Function<ProfileRequestContext, Set<String>> strategy) Set a lookup strategy for the set of audiences, in addition to the relying party(ies) to which the IdP is issuing the ID Token, with which the token may be shared.- Parameters:
strategy- lookup strategy
-
getAlwaysIncludedAttributes
@Nonnull @NonnullElements @NotLive public Set<String> getAlwaysIncludedAttributes(@Nullable ProfileRequestContext profileRequestContext) Get the set of attribute IDs which should be included in the ID token regardless of response_type.Default behavior is to include claims only with the implicit id_token type only, while any use of a back-channel relies on the user_info endpoint to get the claims. This setting forces certain attributes to be added to the ID token regardless of flow.
- Specified by:
getAlwaysIncludedAttributesin interfaceOIDCIDTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the attribute IDs to include in all cases
-
setAlwaysIncludedAttributes
Set the set of attribute IDs which should be included in the ID token regardless of response_type.Default behavior is to include claims only with the implicit id_token type only, while any use of a back-channel relies on the user_info endpoint to get the claims. This setting forces certain attributes to be added to the ID token regardless of flow.
- Parameters:
attributes- the attribute IDs to include in all cases
-
setAlwaysIncludedAttributesLookupStrategy
public void setAlwaysIncludedAttributesLookupStrategy(@Nonnull Function<ProfileRequestContext, Set<String>> strategy) Set a lookup strategy for the attribute IDs which should be included in the ID token regardless of response_type.- Parameters:
strategy- lookup strategy
-
getIDTokenManipulationStrategy
@Nullable public BiFunction<ProfileRequestContext,Map<String, getIDTokenManipulationStrategyObject>, Map<String, Object>> (@Nullable ProfileRequestContext profileRequestContext) Get the bi-function for manipulating id_token claims.- Specified by:
getIDTokenManipulationStrategyin interfaceOIDCIDTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the bi-function for manipulating id_token claims
-
setIDTokenManipulationStrategy
public void setIDTokenManipulationStrategy(@Nullable BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>> strategy) Set the bi-function for manipulating id_token claims.- Parameters:
strategy- bi-function for manipulating id_token claims- Since:
- 2.1.0
-
setIDTokenManipulationStrategyLookupStrategy
public void setIDTokenManipulationStrategyLookupStrategy(@Nonnull Function<ProfileRequestContext, BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> strategy) Set a lookup strategy for the bi-function for manipulating id_token claims.- Parameters:
strategy- lookup strategy- Since:
- 2.1.0
-
getAccessTokenClaimsSetManipulationStrategy
@Nullable public BiFunction<ProfileRequestContext,Map<String, getAccessTokenClaimsSetManipulationStrategyObject>, Map<String, Object>> (@Nullable ProfileRequestContext profileRequestContext) Get the bi-function for manipulating access token claims set.- Specified by:
getAccessTokenClaimsSetManipulationStrategyin interfaceOAuth2AccessTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the bi-function for manipulating access token claims set
-
setAccessTokenClaimsSetManipulationStrategy
public void setAccessTokenClaimsSetManipulationStrategy(@Nullable BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>> strategy) Set the bi-function for manipulating access token claims set.- Parameters:
strategy- bi-function for manipulating access token claims set- Since:
- 2.1.0
-
setAccessTokenClaimsSetManipulationStrategyLookupStrategy
public void setAccessTokenClaimsSetManipulationStrategyLookupStrategy(@Nonnull Function<ProfileRequestContext, BiFunction<ProfileRequestContext, Map<String, Object>, Map<String, Object>>> strategy) Set a lookup strategy for the bi-function for manipulating access token claims set.- Parameters:
strategy- lookup strategy- Since:
- 2.1.0
-
getCustomRedirectUriValidationStrategy
@Nullable public BiPredicate<URI,ProfileRequestContext> getCustomRedirectUriValidationStrategy(@Nullable ProfileRequestContext profileRequestContext) Get the bi-predicate for validating redirect URI in request to the current profile request context state.- Specified by:
getCustomRedirectUriValidationStrategyin interfaceOIDCSSOProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the bi-predicate for validating requested redirect URI
-
setCustomRedirectUriValidationStrategy
public void setCustomRedirectUriValidationStrategy(@Nullable BiPredicate<URI, ProfileRequestContext> strategy) Set the bi-predicate for custom validation of redirect URI in the request. .- Parameters:
strategy- bi-predicate for custom validation of redirect URI in the request- Since:
- 3.2.0
-
setCustomRedirectUriValidationStrategyLookupStrategy
public void setCustomRedirectUriValidationStrategyLookupStrategy(@Nonnull Function<ProfileRequestContext, BiPredicate<URI, ProfileRequestContext>> strategy) Set a lookup strategy for the bi-predicate for custom validation of redirect URI in the request.- Parameters:
strategy- lookup strategy- Since:
- 3.2.0
-
isAlwaysIssueBearerAccessToken
public boolean isAlwaysIssueBearerAccessToken(@Nullable ProfileRequestContext profileRequestContext) Get whether the access token to be issued is always a bearer access token.- Specified by:
isAlwaysIssueBearerAccessTokenin interfaceOAuth2AccessTokenProducingProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- whether the access token to be issued is always a bearer access token
-
setAlwaysIssueBearerAccessToken
public void setAlwaysIssueBearerAccessToken(boolean flag) Set whether the access token to be issued is always a bearer access token.- Parameters:
flag- flag to set- Since:
- 3.2.0
-
setAlwaysIssueBearerAccessTokenPredicate
public void setAlwaysIssueBearerAccessTokenPredicate(@Nonnull Predicate<ProfileRequestContext> condition) Set a condition to determine whether the access token to be issued is always a bearer access token.- Parameters:
condition- condition to set- Since:
- 3.2.0
-
isStrictScopeValidation
Get whether scope validation is strict, i.e. request for unallowed scopes is an error.- Specified by:
isStrictScopeValidationin interfaceOAuth2ScopeValidatingProfileConfiguration- Parameters:
profileRequestContext- the profile request context- Returns:
- whether scope validation is strict
-
setStrictScopeValidation
public void setStrictScopeValidation(boolean flag) Set whether scope validation is strict, i.e. request for unallowed scopes is an error.- Parameters:
flag- flag to set- Since:
- 3.2.0
-
setStrictScopeValidationPredicate
Set a condition to determine whether scope validation is strict, i.e. request for unallowed scopes is an error.- Parameters:
condition- condition to set- Since:
- 3.2.0
-