Class SAML2Profile

java.lang.Object
org.pac4j.core.profile.BasicUserProfile
org.pac4j.core.profile.CommonProfile
org.pac4j.saml.profile.SAML2Profile
All Implemented Interfaces:
Externalizable, Serializable, org.pac4j.core.profile.UserProfile

public class SAML2Profile extends org.pac4j.core.profile.CommonProfile

This class is the user profile for sites using SAML2 protocol.

It is returned by the SAML2Client.

Version:
1.5.0
Author:
Michael Remond, Misagh Moayyed, Ruochao Zheng
See Also:
  • Constructor Details

    • SAML2Profile

      public SAML2Profile()
    • SAML2Profile

      public SAML2Profile(boolean canMergeAttributes)
      Create a profile with possibility to merge attributes with the same name and collection-type values. In SAML2 it's very important to get full collection of roles which are received in separate single-element collections.

      In order to use it you may initialize the client in the following way:

       SAML2Client client = new SAML2Client();
       SAML2ClientConfiguration config = new SAML2ClientConfiguration();
       SAML2Authenticator authenticator = new SAML2Authenticator(config.getAttributeAsId());
       boolean canMergeAttributes = true;
       authenticator.setProfileDefinition(new CommonProfileDefinition<>(x → new SAML2Profile(canMergeAttributes)));
       client.setAuthenticator(authenticator);
       
      Parameters:
      canMergeAttributes - if true - merge attributes with the same name and collection-type values, if false - overwrite them.
      Since:
      3.1.0
  • Method Details

    • getNotBefore

      public ZonedDateTime getNotBefore()
    • setNotBefore

      public void setNotBefore(ZonedDateTime notBefore)
    • getNotOnOrAfter

      public ZonedDateTime getNotOnOrAfter()
    • setNotOnOrAfter

      public void setNotOnOrAfter(ZonedDateTime notOnOrAfter)
    • getSessionIndex

      public String getSessionIndex()
    • setSessionIndex

      public void setSessionIndex(String sessionIndex)
    • getIssuerEntityID

      public String getIssuerEntityID()
    • setIssuerEntityID

      public void setIssuerEntityID(String issuerEntityID)
    • getAuthnContexts

      public List<String> getAuthnContexts()
    • setAuthnContexts

      public void setAuthnContexts(List<String> authnContexts)
    • getSamlNameIdFormat

      public String getSamlNameIdFormat()
    • setSamlNameIdFormat

      public void setSamlNameIdFormat(String samlNameIdFormat)
    • getSamlNameIdNameQualifier

      public String getSamlNameIdNameQualifier()
    • setSamlNameIdNameQualifier

      public void setSamlNameIdNameQualifier(String samlNameIdNameQualifier)
    • getSamlNameIdSpNameQualifier

      public String getSamlNameIdSpNameQualifier()
    • setSamlNameIdSpNameQualifier

      public void setSamlNameIdSpNameQualifier(String samlNameIdSpNameQualifier)
    • getSamlNameIdSpProviderId

      public String getSamlNameIdSpProviderId()
    • setSamlNameIdSpProviderId

      public void setSamlNameIdSpProviderId(String samlNameIdSpProviderId)