Class AbstractSAML2ArtifactAwareProfileConfiguration

All Implemented Interfaces:
ConditionalProfileConfiguration, ProfileConfiguration, SAMLArtifactAwareProfileConfiguration, SAMLArtifactConsumerProfileConfiguration, SAMLProfileConfiguration, SAML2ProfileConfiguration, Component, DestructableComponent, IdentifiableComponent, IdentifiedComponent, InitializableComponent
Direct Known Subclasses:
AttributeQueryProfileConfiguration, BrowserSSOProfileConfiguration, SingleLogoutProfileConfiguration

public abstract class AbstractSAML2ArtifactAwareProfileConfiguration
extends AbstractSAML2ProfileConfiguration
implements SAMLArtifactAwareProfileConfiguration, SAMLArtifactConsumerProfileConfiguration
Configuration support for artifact-aware profiles.
Since:
3.4.0
  • Field Details

    • artifactConfigurationLookupStrategy

      @Nonnull private Function<ProfileRequestContext,​SAMLArtifactConfiguration> artifactConfigurationLookupStrategy
      Lookup function to supply artifactConfiguration property.
    • signArtifactRequestsPredicate

      @Nonnull private Predicate<MessageContext> signArtifactRequestsPredicate
      Predicate used to determine if artifact resolution requests should be signed.
    • clientTLSArtifactRequestsPredicate

      @Nonnull private Predicate<MessageContext> clientTLSArtifactRequestsPredicate
      Predicate used to determine if artifact resolution requests should use client TLS.
  • Constructor Details

    • AbstractSAML2ArtifactAwareProfileConfiguration

      protected AbstractSAML2ArtifactAwareProfileConfiguration​(@Nonnull @NotEmpty String profileId)
      Constructor.
      Parameters:
      profileId - unique ID for this profile
  • Method Details

    • getArtifactConfiguration

      @Nullable public SAMLArtifactConfiguration getArtifactConfiguration​(@Nullable ProfileRequestContext profileRequestContext)
      Get the associated SAMLArtifactConfiguration for the profile, if any.
      Specified by:
      getArtifactConfiguration in interface SAMLArtifactAwareProfileConfiguration
      Parameters:
      profileRequestContext - current profile request context
      Returns:
      an associated artifact configuration, or null
    • setArtifactConfiguration

      public void setArtifactConfiguration​(@Nullable SAMLArtifactConfiguration config)
      Set the SAML artifact configuration, if any.
      Parameters:
      config - configuration to set
    • setArtifactConfigurationLookupStrategy

      public void setArtifactConfigurationLookupStrategy​(@Nonnull Function<ProfileRequestContext,​SAMLArtifactConfiguration> strategy)
      Set a lookup strategy for the SAML artifact configuration.
      Parameters:
      strategy - lookup strategy
      Since:
      3.3.0
    • isSignArtifactRequests

      public boolean isSignArtifactRequests​(@Nullable MessageContext messageContext)
      Get whether artifact resolution requests should be signed.
      Specified by:
      isSignArtifactRequests in interface SAMLArtifactConsumerProfileConfiguration
      Parameters:
      messageContext - current message context
      Returns:
      whether artifact resolution requests should be signed
    • setSignArtifactRequests

      public void setSignArtifactRequests​(boolean flag)
      Set whether artifact resolution requests should be signed.
      Parameters:
      flag - flag to set
    • setSignArtifactRequestsPredicate

      public void setSignArtifactRequestsPredicate​(@Nonnull Predicate<MessageContext> predicate)
      Set the predicate used to determine if artifact resolution requests should be signed.
      Parameters:
      predicate - the predicate
      Since:
      4.0.0
    • isClientTLSArtifactRequests

      public boolean isClientTLSArtifactRequests​(@Nullable MessageContext messageContext)
      Get whether artifact resolution requests should use client TLS.
      Specified by:
      isClientTLSArtifactRequests in interface SAMLArtifactConsumerProfileConfiguration
      Parameters:
      messageContext - current message context
      Returns:
      whether artifact resolution requests should use client TLS
    • setClientTLSArtifactRequests

      public void setClientTLSArtifactRequests​(boolean flag)
      Set whether artifact resolution requests should use client TLS.
      Parameters:
      flag - flag to set
    • setClientTLSArtifactRequestsPredicate

      public void setClientTLSArtifactRequestsPredicate​(@Nonnull Predicate<MessageContext> predicate)
      Set the predicate used to determine if artifact resolution requests should use client TLS.
      Parameters:
      predicate - the predicate
      Since:
      4.0.0