Class BaseAddAuthenticationStatementToAssertion
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.profile.action.AbstractProfileAction
-
- org.opensaml.profile.action.AbstractConditionalProfileAction
-
- net.shibboleth.idp.profile.AbstractProfileAction
-
- net.shibboleth.idp.authn.AbstractAuthenticationAction
-
- net.shibboleth.idp.saml.profile.impl.BaseAddAuthenticationStatementToAssertion
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction,Aware,MessageSource,MessageSourceAware,Action
- Direct Known Subclasses:
AddAuthenticationStatementToAssertion,AddAuthnStatementToAssertion
public abstract class BaseAddAuthenticationStatementToAssertion extends AbstractAuthenticationAction
Base class for actions that encode authentication information into a SAML 1 or SAML 2 statement.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classBaseAddAuthenticationStatementToAssertion.RemoteAddressStrategyDefault strategy for obtaining client address from servlet layer.
-
Field Summary
Fields Modifier and Type Field Description private Function<ProfileRequestContext,String>addressLookupStrategyStrategy used to obtain the client Address to insert.private AuthenticationResultauthenticationResultAuthenticationResult basis of statement.private IdentifierGenerationStrategyidGeneratorThe generator to use.private Function<ProfileRequestContext,IdentifierGenerationStrategy>idGeneratorLookupStrategyStrategy used to locate theIdentifierGenerationStrategyto use.private StringissuerIdEntityID to populate as assertion issuer.private Function<ProfileRequestContext,String>issuerLookupStrategyStrategy used to obtain the assertion issuer value.private org.slf4j.LoggerlogClass logger.private booleanstatementInOwnAssertionWhether the generated authentication statement should be placed in its own assertion or added to one if it exists.
-
Constructor Summary
Constructors Constructor Description BaseAddAuthenticationStatementToAssertion()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoInitialize()protected booleandoPreExecute(ProfileRequestContext profileRequestContext, AuthenticationContext authenticationContext)Function<ProfileRequestContext,String>getAddressLookupStrategy()Get the strategy used to obtain the client IP address to insert into the statement.AuthenticationResultgetAuthenticationResult()Get theAuthenticationResultto encode.IdentifierGenerationStrategygetIdGenerator()Get theIdentifierGenerationStrategyto use if an assertion must be created.StringgetIssuerId()Get the issuer name to use if an assertion must be created.booleanisStatementInOwnAssertion()Set whether the generated statement should be placed in its own assertion or added to one if it exists.voidsetAddressLookupStrategy(Function<ProfileRequestContext,String> strategy)Set the strategy used to obtain the client IP address to insert into the statement.voidsetIdentifierGeneratorLookupStrategy(Function<ProfileRequestContext,IdentifierGenerationStrategy> strategy)Set the strategy used to locate theIdentifierGenerationStrategyto use.voidsetIssuerLookupStrategy(Function<ProfileRequestContext,String> strategy)Set the strategy used to locate the issuer value to use.voidsetStatementInOwnAssertion(boolean inOwnAssertion)Set whether the generated authentication statement should be placed in its own assertion or added to one if it exists.-
Methods inherited from class net.shibboleth.idp.authn.AbstractAuthenticationAction
doExecute, doExecute, doPreExecute, setAuthenticationContextLookupStrategy
-
Methods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getMessage, getMessage, getMessage, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategy
-
Methods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationCondition
-
Methods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponse
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, initialize, isDestroyed, isInitialized
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
-
-
-
Field Detail
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
statementInOwnAssertion
private boolean statementInOwnAssertion
Whether the generated authentication statement should be placed in its own assertion or added to one if it exists.
-
idGeneratorLookupStrategy
@Nonnull private Function<ProfileRequestContext,IdentifierGenerationStrategy> idGeneratorLookupStrategy
Strategy used to locate theIdentifierGenerationStrategyto use.
-
issuerLookupStrategy
@Nonnull private Function<ProfileRequestContext,String> issuerLookupStrategy
Strategy used to obtain the assertion issuer value.
-
addressLookupStrategy
@NonnullAfterInit private Function<ProfileRequestContext,String> addressLookupStrategy
Strategy used to obtain the client Address to insert.
-
authenticationResult
@Nullable private AuthenticationResult authenticationResult
AuthenticationResult basis of statement.
-
idGenerator
@Nullable private IdentifierGenerationStrategy idGenerator
The generator to use.
-
issuerId
@Nullable private String issuerId
EntityID to populate as assertion issuer.
-
-
Method Detail
-
isStatementInOwnAssertion
public boolean isStatementInOwnAssertion()
Set whether the generated statement should be placed in its own assertion or added to one if it exists.- Returns:
- whether the generated statement should be placed in its own assertion or added to one if it exists
-
setStatementInOwnAssertion
public void setStatementInOwnAssertion(boolean inOwnAssertion)
Set whether the generated authentication statement should be placed in its own assertion or added to one if it exists.- Parameters:
inOwnAssertion- whether the generated authentication statement should be placed in its own assertion or added to one if it exists
-
setIdentifierGeneratorLookupStrategy
public void setIdentifierGeneratorLookupStrategy(@Nonnull Function<ProfileRequestContext,IdentifierGenerationStrategy> strategy)Set the strategy used to locate theIdentifierGenerationStrategyto use.- Parameters:
strategy- lookup strategy
-
setIssuerLookupStrategy
public void setIssuerLookupStrategy(@Nonnull Function<ProfileRequestContext,String> strategy)Set the strategy used to locate the issuer value to use.- Parameters:
strategy- lookup strategy
-
getAddressLookupStrategy
@NonnullAfterInit public Function<ProfileRequestContext,String> getAddressLookupStrategy()
Get the strategy used to obtain the client IP address to insert into the statement.- Returns:
- lookup strategy
- Since:
- 4.0.0
-
setAddressLookupStrategy
public void setAddressLookupStrategy(@Nullable Function<ProfileRequestContext,String> strategy)Set the strategy used to obtain the client IP address to insert into the statement.- Parameters:
strategy- lookup strategy- Since:
- 4.0.0
-
getAuthenticationResult
@Nonnull public AuthenticationResult getAuthenticationResult()
Get theAuthenticationResultto encode.- Returns:
- the result to encode
-
getIdGenerator
@Nonnull public IdentifierGenerationStrategy getIdGenerator()
Get theIdentifierGenerationStrategyto use if an assertion must be created.- Returns:
- the ID generation strategy
-
getIssuerId
@Nonnull public String getIssuerId()
Get the issuer name to use if an assertion must be created.- Returns:
- the issuer name
-
doInitialize
protected void doInitialize() throws ComponentInitializationException- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull AuthenticationContext authenticationContext)- Overrides:
doPreExecutein classAbstractAuthenticationAction
-
-