Class AddProxyRestrictionToAssertions
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.profile.action.AbstractProfileAction
-
- org.opensaml.profile.action.AbstractConditionalProfileAction
-
- org.opensaml.saml.saml2.profile.impl.AddProxyRestrictionToAssertions
-
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,ProfileAction
public class AddProxyRestrictionToAssertions extends AbstractConditionalProfileAction
Action adds anProxyRestriction
to everyAssertion
contained in a SAML 2 response, with the audiences and count obtained from a lookup function. If the containingConditions
is not present, it will be created.
-
-
Field Summary
Fields Modifier and Type Field Description private Set<String>
audiences
Audiences to add.private org.slf4j.Logger
log
Class logger.private Integer
proxyCount
ProxyCount to add.private Function<ProfileRequestContext,Pair<Integer,Set<String>>>
proxyRestrictionLookupStrategy
Strategy used to obtain the material to add.private Response
response
Response to modify.private Function<ProfileRequestContext,Response>
responseLookupStrategy
Strategy used to locate the Response to operate on.
-
Constructor Summary
Constructors Constructor Description AddProxyRestrictionToAssertions()
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addProxyRestriction(ProfileRequestContext profileRequestContext, Conditions conditions)
Add the audiences obtained from a lookup function to theProxyRestriction
.protected void
doExecute(ProfileRequestContext profileRequestContext)
protected void
doInitialize()
protected boolean
doPreExecute(ProfileRequestContext profileRequestContext)
private ProxyRestriction
getProxyRestriction(Conditions conditions)
Get theProxyRestriction
to which audiences will be added.void
setProxyRestrictionLookupStrategy(Function<ProfileRequestContext,Pair<Integer,Set<String>>> strategy)
Set the strategy used to obtain the proxy restrictions to apply.void
setResponseLookupStrategy(Function<ProfileRequestContext,Response> strategy)
Set the strategy used to locate the Response to operate on.-
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.
-
responseLookupStrategy
@Nonnull private Function<ProfileRequestContext,Response> responseLookupStrategy
Strategy used to locate the Response to operate on.
-
proxyRestrictionLookupStrategy
@Nullable private Function<ProfileRequestContext,Pair<Integer,Set<String>>> proxyRestrictionLookupStrategy
Strategy used to obtain the material to add.
-
response
@Nullable private Response response
Response to modify.
-
proxyCount
@Nullable private Integer proxyCount
ProxyCount to add.
-
-
Method Detail
-
setResponseLookupStrategy
public void setResponseLookupStrategy(@Nonnull Function<ProfileRequestContext,Response> strategy)
Set the strategy used to locate the Response to operate on.- Parameters:
strategy
- lookup strategy
-
setProxyRestrictionLookupStrategy
public void setProxyRestrictionLookupStrategy(@Nonnull Function<ProfileRequestContext,Pair<Integer,Set<String>>> strategy)
Set the strategy used to obtain the proxy restrictions to apply.- Parameters:
strategy
- lookup strategy
-
doInitialize
protected void doInitialize() throws ComponentInitializationException
- Overrides:
doInitialize
in classAbstractInitializableComponent
- Throws:
ComponentInitializationException
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)
- Overrides:
doPreExecute
in classAbstractConditionalProfileAction
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)
- Overrides:
doExecute
in classAbstractProfileAction
-
addProxyRestriction
private void addProxyRestriction(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull Conditions conditions)
Add the audiences obtained from a lookup function to theProxyRestriction
. If noProxyRestriction
exists on the givenConditions
one is created and added.- Parameters:
profileRequestContext
- current profile request contextconditions
- condition that has, or will receive the created,ProxyRestriction
-
getProxyRestriction
@Nonnull private ProxyRestriction getProxyRestriction(@Nonnull Conditions conditions)
Get theProxyRestriction
to which audiences will be added.- Parameters:
conditions
- existing set of conditions- Returns:
- the condition to which audiences will be added
-
-