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
Action adds an
ProxyRestriction
to every Assertion
contained in a SAML 2
response, with the audiences and count obtained from a lookup function. If the containing
Conditions
is not present, it will be created.-
Field Summary
FieldsModifier and TypeFieldDescriptionAudiences to add.private final org.slf4j.Logger
Class logger.private Integer
ProxyCount to add.Strategy used to obtain the material to add.private Response
Response to modify.private Function<ProfileRequestContext,
Response> Strategy used to locate the Response to operate on. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addProxyRestriction
(ProfileRequestContext profileRequestContext, Conditions conditions) Add the audiences obtained from a lookup function to theProxyRestriction
.protected void
doExecute
(ProfileRequestContext profileRequestContext) Performs this action.protected void
protected boolean
doPreExecute
(ProfileRequestContext profileRequestContext) Called prior to execution, actions may override this method to perform pre-processing for a request.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
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 Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
responseLookupStrategy
Strategy used to locate the Response to operate on. -
proxyRestrictionLookupStrategy
@Nullable private Function<ProfileRequestContext,Pair<Integer, proxyRestrictionLookupStrategySet<String>>> Strategy used to obtain the material to add. -
response
Response to modify. -
proxyCount
ProxyCount to add. -
audiences
Audiences to add.
-
-
Constructor Details
-
AddProxyRestrictionToAssertions
public AddProxyRestrictionToAssertions()Constructor.
-
-
Method Details
-
setResponseLookupStrategy
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
- Overrides:
doInitialize
in classAbstractInitializableComponent
- Throws:
ComponentInitializationException
-
doPreExecute
Called prior to execution, actions may override this method to perform pre-processing for a request.If false is returned, execution will not proceed, and the action should attach an
EventContext
to the context tree to signal how to continue with overall workflow processing.If returning successfully, the last step should be to return the result of the superclass version of this method.
- Overrides:
doPreExecute
in classAbstractConditionalProfileAction
- Parameters:
profileRequestContext
- the current IdP profile request context- Returns:
- true iff execution should proceed
-
doExecute
Performs this action. Actions must override this method to perform their work.- Overrides:
doExecute
in classAbstractProfileAction
- Parameters:
profileRequestContext
- the current IdP profile request context
-
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
Get theProxyRestriction
to which audiences will be added.- Parameters:
conditions
- existing set of conditions- Returns:
- the condition to which audiences will be added
-