Class BrowserSSOProfileConfiguration
- All Implemented Interfaces:
AuthenticationProfileConfiguration,AttributeResolvingProfileConfiguration,ConditionalProfileConfiguration,ProfileConfiguration,SAMLArtifactAwareProfileConfiguration,SAMLArtifactConsumerProfileConfiguration,SAMLProfileConfiguration,SAML2ProfileConfiguration,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
- Direct Known Subclasses:
ECPProfileConfiguration,SSOSProfileConfiguration
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Predicate<ProfileRequestContext>The predicate used to determine if produced assertions may be delegated.private Function<ProfileRequestContext,Set<String>> Lookup function to supply authentication flows.private Function<ProfileRequestContext,String> Lookup function for requested AC operator.Lookup function to supply the strategy function for translating fully-generic data.Lookup function to supply the strategy function for translating SAML 2.0 AuthnContext data.private Predicate<ProfileRequestContext>Whether to compare client and assertion addresses on inbound SSO.static final LongDefault maximum delegation chain length.Lookup function to supply default authentication methods.static final intBit constant for RequestedAuthnContext feature.static final intBit constant for Scoping feature.private Predicate<ProfileRequestContext>Whether to mandate forced authentication for the request.private Predicate<ProfileRequestContext>Whether to ignore Scoping elements within AuthnRequest.private Predicate<ProfileRequestContext>Whether responses to the authentication request should include an attribute statement.private Function<ProfileRequestContext,Duration> Lookup function to supply maximum session lifetime.private Function<ProfileRequestContext,Duration> Lookup function to supply maximum time since inbound AuthnInstant.private Function<ProfileRequestContext,Long> Lookup function to supply maximum delegation chain length.private Function<ProfileRequestContext,Collection<String>> Lookup function to supply NameID formats.private Function<ProfileRequestContext,Collection<String>> Lookup function to supply post authentication flows.static final StringID for this profile configuration.private Predicate<ProfileRequestContext>Whether authentication results should carry the proxied AuthnInstant.private Predicate<ProfileRequestContext>Whether to require requests be signed.private Predicate<ProfileRequestContext>Whether attributes should be resolved in the course of the profile.private Predicate<ProfileRequestContext>Whether the response endpoint should be validated if the request is signed.private Predicate<ProfileRequestContext>The predicate used to determine whether to suppressAuthenticatingAuthoritywhen possible.Fields inherited from class net.shibboleth.idp.saml.profile.config.AbstractSAMLProfileConfiguration
DEFAULT_ASSERTION_LIFETIMEFields inherited from class net.shibboleth.idp.profile.config.AbstractProfileConfiguration
DEFAULT_DISALLOWED_FEATURES -
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructor.protectedBrowserSSOProfileConfiguration(String profileId) Constructor. -
Method Summary
Modifier and TypeMethodDescriptiongetAuthenticationFlows(ProfileRequestContext profileRequestContext) Get the allowable authentication flows for this profile.getAuthnContextComparison(ProfileRequestContext profileRequestContext) Get the comparison operator to use when issuing SAML requests containing requested context classes.getAuthnContextTranslationStrategy(ProfileRequestContext profileRequestContext) Get the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.getAuthnContextTranslationStrategyEx(ProfileRequestContext profileRequestContext) Get the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.getDefaultAuthenticationMethods(ProfileRequestContext profileRequestContext) Get the default authentication methods to use, expressed as custom principals.getMaximumSPSessionLifetime(ProfileRequestContext profileRequestContext) Get the maximum amount of time the service provider should maintain a session for the user based on the authentication assertion.getMaximumTimeSinceAuthn(ProfileRequestContext profileRequestContext) Get the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.longgetMaximumTokenDelegationChainLength(ProfileRequestContext profileRequestContext) Get the limits on the total number of delegates that may be derived from the initial SAML token.getNameIDFormatPrecedence(ProfileRequestContext profileRequestContext) Get the name identifier formats to use.getPostAuthenticationFlows(ProfileRequestContext profileRequestContext) Get an ordered list of post-authentication interceptor flows to run for this profile.booleanisAllowDelegation(ProfileRequestContext profileRequestContext) Get the predicate used to determine if produced assertions may be delegated.booleanisCheckAddress(ProfileRequestContext profileRequestContext) Get whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.booleanisForceAuthn(ProfileRequestContext profileRequestContext) Get whether the authentication process should include a proof of user presence.booleanisIgnoreScoping(ProfileRequestContext profileRequestContext) Gets whether Scoping elements in requests should be ignored/omitted.booleanisIncludeAttributeStatement(ProfileRequestContext profileRequestContext) Get whether responses to the authentication request should include an attribute statement.booleanisProxiedAuthnInstant(ProfileRequestContext profileRequestContext) Gets whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.booleanisRequireSignedRequests(ProfileRequestContext profileRequestContext) Get whether to require signed requests.booleanisResolveAttributes(ProfileRequestContext profileRequestContext) Get whether to resolve attributes.booleanisSkipEndpointValidationWhenSigned(ProfileRequestContext profileRequestContext) Get condition to determine whether the response endpoint should be validated if the request is signed.booleanisSuppressAuthenticatingAuthority(ProfileRequestContext profileRequestContext) Gets whether to suppress inclusion ofAuthenticatingAuthorityelement.voidsetAllowDelegation(boolean flag) Set whether produced assertions may be delegated.voidSet the predicate used to determine if produced assertions may be delegated.voidsetAuthenticationFlows(Collection<String> flows) Set the authentication flows to use.voidSet a lookup strategy for the authentication flows to use.voidSet the comparison operator to use when issuing SAML requests containing requested context classes.voidSet a lookup strategy for the comparison operator to use when issuing SAML requests containing requested context classes.voidSet the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.voidsetAuthnContextTranslationStrategyEx(Function<ProfileRequestContext, Collection<Principal>> strategy) Set the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.voidsetAuthnContextTranslationStrategyExLookupStrategy(Function<ProfileRequestContext, Function<ProfileRequestContext, Collection<Principal>>> strategy) Set a lookup strategy for the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.voidsetAuthnContextTranslationStrategyLookupStrategy(Function<ProfileRequestContext, Function<AuthnContext, Collection<Principal>>> strategy) Set a lookup strategy for the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.voidsetCheckAddress(boolean flag) Set whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.voidsetCheckAddressPredicate(Predicate<ProfileRequestContext> condition) Set a condition to determine whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.voidSet the default authentication contexts to use, expressed as custom principals.voidsetDefaultAuthenticationMethodsLookupStrategy(Function<ProfileRequestContext, Collection<AuthnContextClassRefPrincipal>> strategy) Set a lookup strategy for the authentication contexts to use, expressed as custom principals.voidsetForceAuthn(boolean flag) Set whether a fresh user presence proof should be required for this request.voidsetForceAuthnPredicate(Predicate<ProfileRequestContext> condition) Set a condition to determine whether a fresh user presence proof should be required for this request.voidsetIgnoreScoping(boolean flag) Sets whether Scoping elements in requests should be ignored/omitted.voidsetIgnoreScopingPredicate(Predicate<ProfileRequestContext> condition) Sets a condition to determine whether Scoping elements in requests should be ignored/omitted.voidsetIncludeAttributeStatement(boolean flag) Set whether responses to the authentication request should include an attribute statement.voidSet a condition to determine whether responses to the authentication request should include an attribute statement.voidsetMaximumSPSessionLifetime(Duration lifetime) Set the maximum amount of time the service provider should maintain a session for the user based on the authentication assertion.voidSet a lookup strategy for the maximum amount of time the service provider should maintain a session for the user.voidsetMaximumTimeSinceAuthn(Duration amount) Set the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.voidSet a lookup strategy for the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.voidsetMaximumTokenDelegationChainLength(long length) Set the limits on the total number of delegates that may be derived from the initial SAML token.voidSet a lookup strategy for the limits on the total number of delegates that may be derived from the initial SAML token.voidsetNameIDFormatPrecedence(Collection<String> formats) Set the name identifier formats to use.voidsetNameIDFormatPrecedenceLookupStrategy(Function<ProfileRequestContext, Collection<String>> strategy) Set a lookup strategy for the name identifier formats to use.voidSet the ordered collection of post-authentication interceptor flows to enable.voidsetPostAuthenticationFlowsLookupStrategy(Function<ProfileRequestContext, Collection<String>> strategy) Set a lookup strategy for the post-authentication interceptor flows to enable.voidsetProxiedAuthnInstant(boolean flag) Sets whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.voidSets condition to determine whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.voidsetRequireSignedRequests(boolean flag) Set whether to require signed requests.voidSet a condition to determine whether to require signed requests.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.voidsetSkipEndpointValidationWhenSigned(boolean flag) Set whether the response endpoint should be validated if the request is signed.voidSet condition to determine whether the response endpoint should be validated if the request is signed.voidsetSuppressAuthenticatingAuthority(boolean flag) Sets whether to suppress inclusion ofAuthenticatingAuthorityelement.voidSets condition to determine whether to suppress inclusion ofAuthenticatingAuthorityelement.Methods inherited from class net.shibboleth.idp.saml.saml2.profile.config.AbstractSAML2ArtifactAwareProfileConfiguration
getArtifactConfiguration, isClientTLSArtifactRequests, isSignArtifactRequests, setArtifactConfiguration, setArtifactConfigurationLookupStrategy, setClientTLSArtifactRequests, setClientTLSArtifactRequestsPredicate, setSignArtifactRequests, setSignArtifactRequestsPredicateMethods inherited from class net.shibboleth.idp.saml.saml2.profile.config.AbstractSAML2ProfileConfiguration
getProxyAudiences, getProxyCount, isEncryptAssertions, isEncryptAttributes, isEncryptionOptional, isEncryptNameIDs, isIgnoreRequestSignatures, setEncryptAssertions, setEncryptAssertionsPredicate, setEncryptAttributes, setEncryptAttributesPredicate, setEncryptionOptional, setEncryptionOptionalPredicate, setEncryptNameIDs, setEncryptNameIDsPredicate, setIgnoreRequestSignatures, setIgnoreRequestSignaturesPredicate, setProxyAudiences, setProxyAudiencesLookupStrategy, setProxyCount, setProxyCountLookupStrategyMethods inherited from class net.shibboleth.idp.saml.profile.config.AbstractSAMLProfileConfiguration
getAdditionalAudiencesForAssertion, getAssertionLifetime, isIncludeConditionsNotBefore, isSignAssertions, isSignRequests, isSignResponses, setAdditionalAudiencesForAssertion, setAdditionalAudiencesForAssertionLookupStrategy, setAssertionLifetime, setAssertionLifetimeLookupStrategy, setIncludeConditionsNotBefore, setIncludeConditionsNotBeforePredicate, setSignAssertions, setSignAssertionsPredicate, setSignRequests, setSignRequestsPredicate, setSignResponses, setSignResponsesPredicateMethods inherited from class net.shibboleth.idp.profile.config.AbstractConditionalProfileConfiguration
getActivationCondition, setActivationConditionMethods inherited from class net.shibboleth.idp.profile.config.AbstractProfileConfiguration
equals, getDisallowedFeatures, getInboundInterceptorFlows, getOutboundInterceptorFlows, getSecurityConfiguration, hashCode, isFeatureDisallowed, setDisallowedFeatures, setDisallowedFeaturesLookupStrategy, setInboundFlowsLookupStrategy, setInboundInterceptorFlows, setInboundInterceptorFlowsLookupStrategy, setOutboundFlowsLookupStrategy, setOutboundInterceptorFlows, setOutboundInterceptorFlowsLookupStrategy, setSecurityConfiguration, setSecurityConfigurationLookupStrategyMethods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
doInitialize, getIdMethods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
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
getProxyCount, isLocalMethods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.idp.profile.config.ProfileConfiguration
getInboundInterceptorFlows, getOutboundInterceptorFlows, getSecurityConfigurationMethods inherited from interface net.shibboleth.idp.saml.profile.config.SAMLProfileConfiguration
getAdditionalAudiencesForAssertion, getAssertionLifetime, isIncludeConditionsNotBefore, isSignAssertions, isSignRequests, isSignResponses
-
Field Details
-
PROFILE_ID
ID for this profile configuration.- See Also:
-
DEFAULT_DELEGATION_CHAIN_LENGTH
Default maximum delegation chain length. -
FEATURE_AUTHNCONTEXT
public static final int FEATURE_AUTHNCONTEXTBit constant for RequestedAuthnContext feature.- See Also:
-
FEATURE_SCOPING
public static final int FEATURE_SCOPINGBit constant for Scoping feature.- See Also:
-
resolveAttributesPredicate
Whether attributes should be resolved in the course of the profile. -
includeAttributeStatementPredicate
Whether responses to the authentication request should include an attribute statement. -
ignoreScoping
Whether to ignore Scoping elements within AuthnRequest. -
forceAuthnPredicate
Whether to mandate forced authentication for the request. -
checkAddressPredicate
Whether to compare client and assertion addresses on inbound SSO. -
skipEndpointValidationWhenSignedPredicate
Whether the response endpoint should be validated if the request is signed. -
proxiedAuthnInstantPredicate
Whether authentication results should carry the proxied AuthnInstant. -
suppressAuthenticatingAuthorityPredicate
The predicate used to determine whether to suppressAuthenticatingAuthoritywhen possible. -
requireSignedRequestsPredicate
Whether to require requests be signed. -
maximumSPSessionLifetimeLookupStrategy
Lookup function to supply maximum session lifetime. -
maximumTimeSinceAuthnLookupStrategy
Lookup function to supply maximum time since inbound AuthnInstant. -
allowDelegationPredicate
The predicate used to determine if produced assertions may be delegated. -
maximumTokenDelegationChainLengthLookupStrategy
@Nonnull private Function<ProfileRequestContext,Long> maximumTokenDelegationChainLengthLookupStrategyLookup function to supply maximum delegation chain length. -
authnContextTranslationStrategyLookupStrategy
@Nonnull private Function<ProfileRequestContext,Function<AuthnContext, authnContextTranslationStrategyLookupStrategyCollection<Principal>>> Lookup function to supply the strategy function for translating SAML 2.0 AuthnContext data. -
authnContextTranslationStrategyExLookupStrategy
@Nonnull private Function<ProfileRequestContext,Function<ProfileRequestContext, authnContextTranslationStrategyExLookupStrategyCollection<Principal>>> Lookup function to supply the strategy function for translating fully-generic data. -
authnContextComparisonLookupStrategy
Lookup function for requested AC operator. -
defaultAuthenticationContextsLookupStrategy
@Nonnull private Function<ProfileRequestContext,Collection<AuthnContextClassRefPrincipal>> defaultAuthenticationContextsLookupStrategyLookup function to supply default authentication methods. -
authenticationFlowsLookupStrategy
Lookup function to supply authentication flows. -
postAuthenticationFlowsLookupStrategy
@Nonnull private Function<ProfileRequestContext,Collection<String>> postAuthenticationFlowsLookupStrategyLookup function to supply post authentication flows. -
nameIDFormatPrecedenceLookupStrategy
@Nonnull private Function<ProfileRequestContext,Collection<String>> nameIDFormatPrecedenceLookupStrategyLookup function to supply NameID formats.
-
-
Constructor Details
-
BrowserSSOProfileConfiguration
public BrowserSSOProfileConfiguration()Constructor. -
BrowserSSOProfileConfiguration
Constructor.- Parameters:
profileId- unique ID for this profile
-
-
Method Details
-
isResolveAttributes
Get whether to resolve attributes.- Specified by:
isResolveAttributesin interfaceAttributeResolvingProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff resolution should be done
-
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
-
isIncludeAttributeStatement
Get whether responses to the authentication request should include an attribute statement.Default is true
- Parameters:
profileRequestContext- current profile request context- Returns:
- whether responses to the authentication request should include an attribute statement
-
setIncludeAttributeStatement
public void setIncludeAttributeStatement(boolean flag) Set whether responses to the authentication request should include an attribute statement.- Parameters:
flag- flag to set
-
setIncludeAttributeStatementPredicate
public void setIncludeAttributeStatementPredicate(@Nonnull Predicate<ProfileRequestContext> condition) Set a condition to determine whether responses to the authentication request should include an attribute statement.- Parameters:
condition- condition to set
-
isIgnoreScoping
Gets whether Scoping elements in requests should be ignored/omitted.- Parameters:
profileRequestContext- current profile request context- Returns:
- whether Scoping elements in requests should be ignored/omitted
- Since:
- 4.0.0
-
setIgnoreScoping
public void setIgnoreScoping(boolean flag) Sets whether Scoping elements in requests should be ignored/omitted.Defaults to false.
- Parameters:
flag- flag to set- Since:
- 4.0.0
-
setIgnoreScopingPredicate
Sets a condition to determine whether Scoping elements in requests should be ignored/omitted.- Parameters:
condition- condition to set- Since:
- 4.0.0
-
isForceAuthn
Get whether the authentication process should include a proof of user presence.- Specified by:
isForceAuthnin interfaceAuthenticationProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff authentication should require user presence
-
setForceAuthn
public void setForceAuthn(boolean flag) Set whether a fresh user presence proof should be required for this request.- Parameters:
flag- flag to set
-
setForceAuthnPredicate
Set a condition to determine whether a fresh user presence proof should be required for this request.- Parameters:
condition- condition to set
-
isCheckAddress
Get whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.- Parameters:
profileRequestContext- current profile request context- Returns:
- whether to compare addresses
- Since:
- 4.0.0
-
setCheckAddress
public void setCheckAddress(boolean flag) Set whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.- Parameters:
flag- flag to set- Since:
- 4.0.0
-
setCheckAddressPredicate
Set a condition to determine whether the client's address must match the address in an inboundSubjectLocalityelement during inbound SSO.- Parameters:
condition- condition to set- Since:
- 4.0.0
-
isSkipEndpointValidationWhenSigned
public boolean isSkipEndpointValidationWhenSigned(@Nullable ProfileRequestContext profileRequestContext) Get condition to determine whether the response endpoint should be validated if the request is signed.- Parameters:
profileRequestContext- current profile request context- Returns:
- condition
- Since:
- 4.0.0
-
setSkipEndpointValidationWhenSigned
public void setSkipEndpointValidationWhenSigned(boolean flag) Set whether the response endpoint should be validated if the request is signed.- Parameters:
flag- flag to set- Since:
- 3.4.0
-
setSkipEndpointValidationWhenSignedPredicate
public void setSkipEndpointValidationWhenSignedPredicate(@Nonnull Predicate<ProfileRequestContext> condition) Set condition to determine whether the response endpoint should be validated if the request is signed.- Parameters:
condition- condition to set- Since:
- 3.4.0
-
isSuppressAuthenticatingAuthority
public boolean isSuppressAuthenticatingAuthority(@Nullable ProfileRequestContext profileRequestContext) Gets whether to suppress inclusion ofAuthenticatingAuthorityelement.Defaults to false.
- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff the element should be suppressed when possible
- Since:
- 4.2.0
-
setSuppressAuthenticatingAuthority
public void setSuppressAuthenticatingAuthority(boolean flag) Sets whether to suppress inclusion ofAuthenticatingAuthorityelement.Defaults to false.
- Parameters:
flag- flag to set- Since:
- 4.2.0
-
setSuppressAuthenticatingAuthorityPredicate
public void setSuppressAuthenticatingAuthorityPredicate(@Nonnull Predicate<ProfileRequestContext> condition) Sets condition to determine whether to suppress inclusion ofAuthenticatingAuthorityelement.- Parameters:
condition- condition to set- Since:
- 4.2.0
-
isProxiedAuthnInstant
Gets whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.Defaults to true.
- Parameters:
profileRequestContext- current profile request context- Returns:
- whether to proxy across the inbound AuthnInstant
- Since:
- 4.0.0
-
setProxiedAuthnInstant
public void setProxiedAuthnInstant(boolean flag) Sets whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.- Parameters:
flag- flag to set- Since:
- 4.0.0
-
setProxiedAuthnInstantPredicate
Sets condition to determine whether authentication results produced by use of this profile should carry the proxied assertion's AuthnInstant, rather than the current time.- Parameters:
condition- condition to set- Since:
- 4.0.0
-
isRequireSignedRequests
Get whether to require signed requests.- Parameters:
profileRequestContext- current profile request context- Returns:
- whether to require signed requests
- Since:
- 4.3.0
-
setRequireSignedRequests
public void setRequireSignedRequests(boolean flag) Set whether to require signed requests.- Parameters:
flag- flag to set- Since:
- 4.3.0
-
setRequireSignedRequestsPredicate
Set a condition to determine whether to require signed requests.- Parameters:
condition- condition to set- Since:
- 4.3.0
-
getMaximumSPSessionLifetime
@Nullable public Duration getMaximumSPSessionLifetime(@Nullable ProfileRequestContext profileRequestContext) Get the maximum amount of time the service provider should maintain a session for the user based on the authentication assertion. A null or 0 is interpreted as an unlimited lifetime.- Parameters:
profileRequestContext- current profile request context- Returns:
- max lifetime of service provider should maintain a session
-
setMaximumSPSessionLifetime
Set the maximum amount of time the service provider should maintain a session for the user based on the authentication assertion. A null or 0 is interpreted as an unlimited lifetime.- Parameters:
lifetime- max lifetime of service provider should maintain a session
-
setMaximumSPSessionLifetimeLookupStrategy
public void setMaximumSPSessionLifetimeLookupStrategy(@Nonnull Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the maximum amount of time the service provider should maintain a session for the user.- Parameters:
strategy- lookup strategy- Since:
- 3.4.0
-
getMaximumTimeSinceAuthn
@Nullable public Duration getMaximumTimeSinceAuthn(@Nullable ProfileRequestContext profileRequestContext) Get the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.A null or 0 is interpreted as an unlimited amount.
- Parameters:
profileRequestContext- current profile request context- Returns:
- max time since inbound AuthnInstant
- Since:
- 4.0.0
-
setMaximumTimeSinceAuthn
Set the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.A null or 0 is interpreted as an unlimited amount.
- Parameters:
amount- max time to allow- Since:
- 4.0.0
-
setMaximumTimeSinceAuthnLookupStrategy
public void setMaximumTimeSinceAuthnLookupStrategy(@Nonnull Function<ProfileRequestContext, Duration> strategy) Set a lookup strategy for the maximum amount of time allowed to have elapsed since an incoming AuthnInstant.- Parameters:
strategy- lookup strategy- Since:
- 4.0.0
-
isAllowDelegation
Get the predicate used to determine if produced assertions may be delegated.- Parameters:
profileRequestContext- current profile request context- Returns:
- predicate used to determine if produced assertions may be delegated
-
setAllowDelegation
public void setAllowDelegation(boolean flag) Set whether produced assertions may be delegated.- Parameters:
flag- flag to set
-
setAllowDelegationPredicate
Set the predicate used to determine if produced assertions may be delegated.- Parameters:
predicate- used to determine if produced assertions may be delegated
-
getMaximumTokenDelegationChainLength
@NonNegative public long getMaximumTokenDelegationChainLength(@Nullable ProfileRequestContext profileRequestContext) Get the limits on the total number of delegates that may be derived from the initial SAML token.- Parameters:
profileRequestContext- current profile request context- Returns:
- the limit on the total number of delegates that may be derived from the initial SAML token
-
setMaximumTokenDelegationChainLength
Set the limits on the total number of delegates that may be derived from the initial SAML token.- Parameters:
length- the limit on the total number of delegates that may be derived from the initial SAML token
-
setMaximumTokenDelegationChainLengthLookupStrategy
public void setMaximumTokenDelegationChainLengthLookupStrategy(@Nonnull Function<ProfileRequestContext, Long> strategy) Set a lookup strategy for the limits on the total number of delegates that may be derived from the initial SAML token.- Parameters:
strategy- lookup strategy- Since:
- 3.4.0
-
getAuthnContextTranslationStrategy
@Nullable public Function<AuthnContext,Collection<Principal>> getAuthnContextTranslationStrategy(@Nullable ProfileRequestContext profileRequestContext) Get the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.- Parameters:
profileRequestContext- current profile request context- Returns:
- translation function
- Since:
- 4.0.0
-
setAuthnContextTranslationStrategy
public void setAuthnContextTranslationStrategy(@Nullable Function<AuthnContext, Collection<Principal>> strategy) Set the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.- Parameters:
strategy- translation function- Since:
- 4.0.0
-
setAuthnContextTranslationStrategyLookupStrategy
public void setAuthnContextTranslationStrategyLookupStrategy(@Nonnull Function<ProfileRequestContext, Function<AuthnContext, Collection<Principal>>> strategy) Set a lookup strategy for the function to use to translate an inbound proxied SAML 2.0AuthnContextinto the appropriate set of customPrincipalobjects to populate into the subject.- Parameters:
strategy- lookup strategy- Since:
- 4.0.0
-
getAuthnContextTranslationStrategyEx
@Nullable public Function<ProfileRequestContext,Collection<Principal>> getAuthnContextTranslationStrategyEx(@Nullable ProfileRequestContext profileRequestContext) Get the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.This differs from the original in that the input is the entire
ProfileRequestContextof the proxied authentication state rather than the SAMLAuthnContextdirectly.- Parameters:
profileRequestContext- current profile request context- Returns:
- translation function
- Since:
- 4.1.0
-
setAuthnContextTranslationStrategyEx
public void setAuthnContextTranslationStrategyEx(@Nullable Function<ProfileRequestContext, Collection<Principal>> strategy) Set the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.This differs from the original in that the input is the entire
ProfileRequestContextof the proxied authentication state rather than the SAMLAuthnContextdirectly.- Parameters:
strategy- translation function- Since:
- 4.1.0
-
setAuthnContextTranslationStrategyExLookupStrategy
public void setAuthnContextTranslationStrategyExLookupStrategy(@Nonnull Function<ProfileRequestContext, Function<ProfileRequestContext, Collection<Principal>>> strategy) Set a lookup strategy for the function to use to translate an inbound proxied response into the appropriate set of customPrincipalobjects to populate into the subject.This differs from the original in that the input is the entire
ProfileRequestContextof the proxied authentication state rather than the SAMLAuthnContextdirectly.- Parameters:
strategy- lookup strategy- Since:
- 4.1.0
-
getAuthnContextComparison
@Nullable public AuthnContextComparisonTypeEnumeration getAuthnContextComparison(@Nullable ProfileRequestContext profileRequestContext) Get the comparison operator to use when issuing SAML requests containing requested context classes.- Parameters:
profileRequestContext- profile request context- Returns:
- comparison value or null
- Since:
- 4.0.0
-
setAuthnContextComparison
Set the comparison operator to use when issuing SAML requests containing requested context classes.- Parameters:
comparison- comparison value or null- Since:
- 4.0.0
-
setAuthnContextComparisonLookupStrategy
public void setAuthnContextComparisonLookupStrategy(@Nonnull Function<ProfileRequestContext, String> strategy) Set a lookup strategy for the comparison operator to use when issuing SAML requests containing requested context classes.- Parameters:
strategy- lookup strategy- Since:
- 4.0.0
-
getDefaultAuthenticationMethods
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<Principal> getDefaultAuthenticationMethods(@Nullable ProfileRequestContext profileRequestContext) Get the default authentication methods to use, expressed as custom principals.- Specified by:
getDefaultAuthenticationMethodsin interfaceAuthenticationProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- default authentication methods to use
-
setDefaultAuthenticationMethods
public void setDefaultAuthenticationMethods(@Nullable @NonnullElements Collection<AuthnContextClassRefPrincipal> contexts) Set the default authentication contexts to use, expressed as custom principals.- Parameters:
contexts- default authentication contexts to use
-
setDefaultAuthenticationMethodsLookupStrategy
public void setDefaultAuthenticationMethodsLookupStrategy(@Nonnull Function<ProfileRequestContext, Collection<AuthnContextClassRefPrincipal>> strategy) Set a lookup strategy for the authentication contexts to use, expressed as custom principals.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getAuthenticationFlows
@Nonnull @NonnullElements @NotLive @Unmodifiable public Set<String> getAuthenticationFlows(@Nullable ProfileRequestContext profileRequestContext) Get the allowable authentication flows for this profile.The flow IDs returned MUST NOT contain the
AuthenticationFlowDescriptor.FLOW_ID_PREFIXprefix common to all interceptor flows.- Specified by:
getAuthenticationFlowsin interfaceAuthenticationProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- a set of authentication flow IDs to allow
-
setAuthenticationFlows
Set the authentication flows to use.- Parameters:
flows- flow identifiers to use
-
setAuthenticationFlowsLookupStrategy
public void setAuthenticationFlowsLookupStrategy(@Nonnull Function<ProfileRequestContext, Set<String>> strategy) Set a lookup strategy for the authentication flows to use.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getPostAuthenticationFlows
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getPostAuthenticationFlows(@Nullable ProfileRequestContext profileRequestContext) Get an ordered list of post-authentication interceptor flows to run for this profile.The flow IDs returned MUST NOT contain the
ProfileInterceptorFlowDescriptor.FLOW_ID_PREFIXprefix common to all interceptor flows.- Specified by:
getPostAuthenticationFlowsin interfaceAuthenticationProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- a set of interceptor flow IDs to enable
-
setPostAuthenticationFlows
Set the ordered collection of post-authentication interceptor flows to enable.- Parameters:
flows- flow identifiers to enable
-
setPostAuthenticationFlowsLookupStrategy
public void setPostAuthenticationFlowsLookupStrategy(@Nonnull Function<ProfileRequestContext, Collection<String>> strategy) Set a lookup strategy for the post-authentication interceptor flows to enable.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getNameIDFormatPrecedence
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getNameIDFormatPrecedence(@Nullable ProfileRequestContext profileRequestContext) Get the name identifier formats to use.- Parameters:
profileRequestContext- profile request context- Returns:
- formats to use
-
setNameIDFormatPrecedence
Set the name identifier formats to use.- Parameters:
formats- name identifier formats to use
-
setNameIDFormatPrecedenceLookupStrategy
public void setNameIDFormatPrecedenceLookupStrategy(@Nonnull Function<ProfileRequestContext, Collection<String>> strategy) Set a lookup strategy for the name identifier formats to use.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-