Class BrowserSSOProfileConfiguration
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.idp.saml.profile.config.impl.AbstractSAMLProfileConfiguration
net.shibboleth.idp.saml.saml1.profile.config.impl.AbstractSAML1ArtifactAwareProfileConfiguration
net.shibboleth.idp.saml.saml1.profile.config.impl.AbstractSAML1AssertionProducingProfileConfiguration
net.shibboleth.idp.saml.saml1.profile.config.impl.BrowserSSOProfileConfiguration
- All Implemented Interfaces:
AuthenticationProfileConfiguration,InterceptorAwareProfileConfiguration,BrowserSSOProfileConfiguration,SAMLProfileConfiguration,AttributeResolvingProfileConfiguration,ConditionalProfileConfiguration,ProfileConfiguration,SAMLArtifactAwareProfileConfiguration,SAMLAssertionProducingProfileConfiguration,SAMLProfileConfiguration,BrowserSSOProfileConfiguration,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
public class BrowserSSOProfileConfiguration
extends AbstractSAML1AssertionProducingProfileConfiguration
implements BrowserSSOProfileConfiguration, BrowserSSOProfileConfiguration, AuthenticationProfileConfiguration, AttributeResolvingProfileConfiguration, SAMLAssertionProducingProfileConfiguration
Configuration for SAML 1 Browser SSO profile requests.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Function<ProfileRequestContext,Set<String>> Lookup function to supply authentication flows.private Function<ProfileRequestContext,Collection<Principal>> Lookup function to supply default authentication methods.private Predicate<ProfileRequestContext>Whether to mandate forced authentication for the request.private Predicate<ProfileRequestContext>Whether responses to the authentication request should include an attribute statement.private Function<ProfileRequestContext,Collection<String>> Lookup function to supply NameIdentifier formats.private Function<ProfileRequestContext,Collection<String>> Lookup function to supply post authentication flows.static final StringName of profile counter.private Function<ProfileRequestContext,Integer> Lookup function to supply proxyCount property.private Predicate<ProfileRequestContext>Whether attributes should be resolved in the course of the profile.Fields inherited from interface net.shibboleth.saml.saml1.profile.config.BrowserSSOProfileConfiguration
PROFILE_IDFields inherited from interface net.shibboleth.profile.config.ProfileConfiguration
DEFAULT_DISALLOWED_FEATURESFields inherited from interface net.shibboleth.saml.profile.config.SAMLAssertionProducingProfileConfiguration
DEFAULT_ASSERTION_LIFETIME -
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructor.protectedBrowserSSOProfileConfiguration(String profileId) Constructor. -
Method Summary
Modifier and TypeMethodDescriptiongetAuthenticationFlows(ProfileRequestContext profileRequestContext) Get the allowable authentication flows for this profile.getDefaultAuthenticationMethods(ProfileRequestContext profileRequestContext) Get the default authentication methods to use, expressed as custom principals.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.getProxyCount(ProfileRequestContext profileRequestContext) Gets the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.booleanisForceAuthn(ProfileRequestContext profileRequestContext) Get whether the authentication process should include a proof of user presence.booleanisIncludeAttributeStatement(ProfileRequestContext profileRequestContext) Get whether responses to the authentication request should include an attribute statement.booleanisResolveAttributes(ProfileRequestContext profileRequestContext) voidsetAuthenticationFlows(Collection<String> flows) Set the authentication flows to use.voidSet a lookup strategy for the authentication flows to use.voidSet the default authentication methods to use, expressed as custom principals.voidsetDefaultAuthenticationMethodsLookupStrategy(Function<ProfileRequestContext, Collection<Principal>> strategy) Set a lookup strategy for thegetDefaultAuthenticationMethods(ProfileRequestContext)method.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.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.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.voidsetProxyCount(Integer count) Sets the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.voidSet a lookup strategy for the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.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.Methods inherited from class net.shibboleth.idp.saml.saml1.profile.config.impl.AbstractSAML1AssertionProducingProfileConfiguration
getAssertionAudiences, getAssertionLifetime, isIncludeConditionsNotBefore, isSignAssertions, setAdditionalAudiencesForAssertion, setAdditionalAudiencesForAssertionLookupStrategy, setAssertionAudiences, setAssertionAudiencesLookupStrategy, setAssertionLifetime, setAssertionLifetimeLookupStrategy, setIncludeConditionsNotBefore, setIncludeConditionsNotBeforePredicate, setSignAssertions, setSignAssertionsPredicateMethods inherited from class net.shibboleth.idp.saml.saml1.profile.config.impl.AbstractSAML1ArtifactAwareProfileConfiguration
getArtifactConfiguration, setArtifactConfiguration, setArtifactConfigurationLookupStrategyMethods inherited from class net.shibboleth.idp.saml.profile.config.impl.AbstractSAMLProfileConfiguration
getMessageHandler, isSignRequests, isSignResponses, setMessageDecorator, setMessageHandler, setMessageHandlerLookupStrategy, setSignRequests, setSignRequestsPredicate, setSignResponses, setSignResponsesPredicateMethods 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
isLocalMethods 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.profile.config.ProfileConfiguration
getDisallowedFeatures, getSecurityConfiguration, isFeatureDisallowedMethods inherited from interface net.shibboleth.saml.profile.config.SAMLAssertionProducingProfileConfiguration
getAssertionAudiences, getAssertionLifetime, isIncludeConditionsNotBefore, isSignAssertionsMethods inherited from interface net.shibboleth.saml.profile.config.SAMLProfileConfiguration
getMessageHandler, isSignRequests, isSignResponses
-
Field Details
-
PROFILE_COUNTER
Name of profile counter.- 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. -
forceAuthnPredicate
Whether to mandate forced authentication for the request. -
defaultAuthenticationMethodsLookupStrategy
@Nonnull private Function<ProfileRequestContext,Collection<Principal>> defaultAuthenticationMethodsLookupStrategyLookup 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 NameIdentifier formats. -
proxyCountLookupStrategy
Lookup function to supply proxyCount property.
-
-
Constructor Details
-
BrowserSSOProfileConfiguration
public BrowserSSOProfileConfiguration()Constructor. -
BrowserSSOProfileConfiguration
Constructor.- Parameters:
profileId- unique ID for this profile
-
-
Method Details
-
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
-
isIncludeAttributeStatement
Get whether responses to the authentication request should include an attribute statement.Default is true
- Specified by:
isIncludeAttributeStatementin interfaceBrowserSSOProfileConfiguration- 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
-
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
-
getDefaultAuthenticationMethods
@Nonnull @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
Set the default authentication methods to use, expressed as custom principals.- Parameters:
methods- default authentication methods to use
-
setDefaultAuthenticationMethodsLookupStrategy
public void setDefaultAuthenticationMethodsLookupStrategy(@Nonnull Function<ProfileRequestContext, Collection<Principal>> strategy) Set a lookup strategy for thegetDefaultAuthenticationMethods(ProfileRequestContext)method.- Parameters:
strategy- lookup strategy- Since:
- 3.3.0
-
getAuthenticationFlows
@Nonnull @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 @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 @NotLive @Unmodifiable public List<String> getNameIDFormatPrecedence(@Nullable ProfileRequestContext profileRequestContext) Get the name identifier formats to use.- Specified by:
getNameIDFormatPrecedencein interfaceBrowserSSOProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the 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
-
getProxyCount
Gets the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.- Specified by:
getProxyCountin interfaceAuthenticationProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- maximum number of times an assertion or authentication may be proxied
-
setProxyCount
Sets the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.- Parameters:
count- proxy count- Since:
- 4.0.0
-
setProxyCountLookupStrategy
Set a lookup strategy for the maximum number of times an assertion may be proxied outbound and/or the maximum number of hops between the relying party and a proxied authentication authority inbound.- Parameters:
strategy- lookup strategy- Since:
- 4.0.0
-