Class ResolveArtifacts

All Implemented Interfaces:
Component, DestructableComponent, InitializableComponent, ProfileAction

public class ResolveArtifacts extends AbstractProfileAction
Action that resolves SAML 1.x artifacts inside a Request located via a lookup strategy, by default from the inbound message context, and maps them to the corresponding assertions.

The assertions are added to a Response located via a lookup strategy, by default from the outbound message context.

Event:
EventIds.PROCEED_EVENT_ID, EventIds.INVALID_MSG_CTX, EventIds.INVALID_PROFILE_CTX, SAMLEventIds.UNABLE_RESOLVE_ARTIFACT
  • Field Details

  • Constructor Details

    • ResolveArtifacts

      public ResolveArtifacts()
      Constructor.
  • Method Details

    • setRequestLookupStrategy

      public void setRequestLookupStrategy(@Nonnull Function<ProfileRequestContext,Request> strategy)
      Set the strategy used to locate the Request to operate on.
      Parameters:
      strategy - lookup strategy
    • setResponseLookupStrategy

      public void setResponseLookupStrategy(@Nonnull Function<ProfileRequestContext,Response> strategy)
      Set the strategy used to locate the Response to operate on.
      Parameters:
      strategy - lookup strategy
    • setIssuerLookupStrategy

      public void setIssuerLookupStrategy(@Nonnull Function<ProfileRequestContext,String> strategy)
      Set the strategy used to locate the issuer's identity.
      Parameters:
      strategy - lookup strategy
    • setRequesterLookupStrategy

      public void setRequesterLookupStrategy(@Nonnull Function<ProfileRequestContext,String> strategy)
      Set the strategy used to locate the requester's identity.
      Parameters:
      strategy - lookup strategy
    • setArtifactMap

      public void setArtifactMap(@Nonnull SAMLArtifactMap map)
      Set the artifact map to use.
      Parameters:
      map - artifact map
    • doInitialize

      protected void doInitialize() throws ComponentInitializationException
      Overrides:
      doInitialize in class AbstractInitializableComponent
      Throws:
      ComponentInitializationException
    • doPreExecute

      protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)
      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 class AbstractProfileAction
      Parameters:
      profileRequestContext - the current IdP profile request context
      Returns:
      true iff execution should proceed
    • doExecute

      protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)
      Performs this action. Actions must override this method to perform their work.
      Overrides:
      doExecute in class AbstractProfileAction
      Parameters:
      profileRequestContext - the current IdP profile request context