public class CopyNameIDFromRequest extends AbstractProfileAction
NameID
and adds it to the Subject
of all the statements
in all the assertions found in a Response
. The message to update is returned by a lookup
strategy, by default the message returned by InOutOperationContext.getOutboundMessageContext()
.
No assertions or statements will be created by this action, but if no Subject
exists in
the statements found, it will be created.
The source of the NameID
is a SAMLSubjectNameIdentifierContext
returned by a lookup
strategy.
Constructor and Description |
---|
CopyNameIDFromRequest()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
doExecute(ProfileRequestContext profileRequestContext)
Performs this action.
|
protected boolean |
doPreExecute(ProfileRequestContext profileRequestContext)
Called prior to execution, actions may override this method to perform pre-processing for a request.
|
void |
setNameIDContextLookupStrategy(com.google.common.base.Function<ProfileRequestContext,SAMLSubjectNameIdentifierContext> strategy)
Set the strategy used to locate the
SAMLSubjectNameIdentifierContext to copy from. |
void |
setOverwriteExisting(boolean flag)
Set whether to overwrite any existing
NameID objects found. |
void |
setResponseLookupStrategy(com.google.common.base.Function<ProfileRequestContext,Response> strategy)
Set the strategy used to locate the
Response to operate on. |
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponse
destroy, doDestroy, doInitialize, initialize, isDestroyed, isInitialized
public void setOverwriteExisting(boolean flag)
NameID
objects found.flag
- true iff the action should overwrite any existing objectspublic void setNameIDContextLookupStrategy(@Nonnull com.google.common.base.Function<ProfileRequestContext,SAMLSubjectNameIdentifierContext> strategy)
SAMLSubjectNameIdentifierContext
to copy from.strategy
- lookup strategypublic void setResponseLookupStrategy(@Nonnull com.google.common.base.Function<ProfileRequestContext,Response> strategy)
Response
to operate on.strategy
- lookup strategyprotected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)
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.
doPreExecute
in class AbstractProfileAction
profileRequestContext
- the current IdP profile request contextprotected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)
doExecute
in class AbstractProfileAction
profileRequestContext
- the current IdP profile request contextCopyright © 2019. All rights reserved.