Class SignAssertions

  • All Implemented Interfaces:
    net.shibboleth.utilities.java.support.component.Component, net.shibboleth.utilities.java.support.component.DestructableComponent, net.shibboleth.utilities.java.support.component.InitializableComponent, org.opensaml.profile.action.ProfileAction

    public class SignAssertions
    extends org.opensaml.profile.action.AbstractProfileAction
    Action that signs assertions in a SAML 1/2 Response returned by a lookup strategy, by default the message returned by InOutOperationContext.getOutboundMessageContext().

    The SecurityParametersContext governing the signing process is located by a lookup strategy, by default a child of the profile request context.

    Event:
    EventIds.PROCEED_EVENT_ID, EventIds.INVALID_MSG_CTX
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.slf4j.Logger log
      Class logger.
      private org.opensaml.saml.common.SAMLObject response
      The response containing the assertions to be signed.
      private Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.saml.common.SAMLObject> responseLookupStrategy
      Strategy used to locate the response to operate on.
      private Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.xmlsec.context.SecurityParametersContext> securityParametersLookupStrategy
      Strategy used to locate the SecurityParametersContext to use for signing.
      private org.opensaml.xmlsec.SignatureSigningParameters signatureSigningParameters
      The signature signing parameters.
    • Constructor Summary

      Constructors 
      Constructor Description
      SignAssertions()
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void doExecute​(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
      protected boolean doPreExecute​(org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
      private void logResponse​(String message)
      Log the Response with the given message at trace level.
      void setResponseLookupStrategy​(Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.saml.common.SAMLObject> strategy)
      Set the strategy used to locate the response to operate on.
      void setSecurityParametersLookupStrategy​(Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.xmlsec.context.SecurityParametersContext> strategy)
      Set the strategy used to locate the SecurityParametersContext to use.
      • 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, doInitialize, initialize, isDestroyed, isInitialized
      • 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<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.saml.common.SAMLObject> responseLookupStrategy
        Strategy used to locate the response to operate on.
      • securityParametersLookupStrategy

        @Nonnull
        private Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.xmlsec.context.SecurityParametersContext> securityParametersLookupStrategy
        Strategy used to locate the SecurityParametersContext to use for signing.
      • signatureSigningParameters

        @Nullable
        private org.opensaml.xmlsec.SignatureSigningParameters signatureSigningParameters
        The signature signing parameters.
      • response

        @Nullable
        private org.opensaml.saml.common.SAMLObject response
        The response containing the assertions to be signed.
    • Constructor Detail

      • SignAssertions

        public SignAssertions()
        Constructor.
    • Method Detail

      • setResponseLookupStrategy

        public void setResponseLookupStrategy​(@Nonnull
                                              Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.saml.common.SAMLObject> strategy)
        Set the strategy used to locate the response to operate on.
        Parameters:
        strategy - lookup strategy
      • setSecurityParametersLookupStrategy

        public void setSecurityParametersLookupStrategy​(@Nonnull
                                                        Function<org.opensaml.profile.context.ProfileRequestContext,​org.opensaml.xmlsec.context.SecurityParametersContext> strategy)
        Set the strategy used to locate the SecurityParametersContext to use.
        Parameters:
        strategy - lookup strategy
      • doPreExecute

        protected boolean doPreExecute​(@Nonnull
                                       org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
        Overrides:
        doPreExecute in class org.opensaml.profile.action.AbstractProfileAction
      • doExecute

        protected void doExecute​(@Nonnull
                                 org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
        Overrides:
        doExecute in class org.opensaml.profile.action.AbstractProfileAction
      • logResponse

        private void logResponse​(@Nonnull
                                 String message)
        Log the Response with the given message at trace level.
        Parameters:
        message - the log message