Class LdapAuthority

  • All Implemented Interfaces:
    java.io.Serializable, GrantedAuthority

    public class LdapAuthority
    extends java.lang.Object
    implements GrantedAuthority
    An authority that contains at least a DN and a role name for an LDAP entry but can also contain other desired attributes to be fetched during an LDAP authority search.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      LdapAuthority​(java.lang.String role, java.lang.String dn)
      Constructs an LdapAuthority that has a role and a DN but no other attributes
      LdapAuthority​(java.lang.String role, java.lang.String dn, java.util.Map<java.lang.String,​java.util.List<java.lang.String>> attributes)
      Constructs an LdapAuthority with the given role, DN and other LDAP attributes
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)
      Compares the LdapAuthority based on getAuthority() and getDn() values
      java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getAttributes()
      Returns the LDAP attributes
      java.util.List<java.lang.String> getAttributeValues​(java.lang.String name)
      Returns the values for a specific attribute
      java.lang.String getAuthority()
      If the GrantedAuthority can be represented as a String and that String is sufficient in precision to be relied upon for an access control decision by an AccessDecisionManager (or delegate), this method should return such a String.
      java.lang.String getDn()
      Returns the DN for this LDAP authority
      java.lang.String getFirstAttributeValue​(java.lang.String name)
      Returns the first attribute value for a specified attribute
      int hashCode()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • LdapAuthority

        public LdapAuthority​(java.lang.String role,
                             java.lang.String dn)
        Constructs an LdapAuthority that has a role and a DN but no other attributes
        Parameters:
        role -
        dn -
      • LdapAuthority

        public LdapAuthority​(java.lang.String role,
                             java.lang.String dn,
                             java.util.Map<java.lang.String,​java.util.List<java.lang.String>> attributes)
        Constructs an LdapAuthority with the given role, DN and other LDAP attributes
        Parameters:
        role -
        dn -
        attributes -
    • Method Detail

      • getAttributes

        public java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getAttributes()
        Returns the LDAP attributes
        Returns:
        the LDAP attributes, map can be null
      • getDn

        public java.lang.String getDn()
        Returns the DN for this LDAP authority
        Returns:
      • getAttributeValues

        public java.util.List<java.lang.String> getAttributeValues​(java.lang.String name)
        Returns the values for a specific attribute
        Parameters:
        name - the attribute name
        Returns:
        a String array, never null but may be zero length
      • getFirstAttributeValue

        public java.lang.String getFirstAttributeValue​(java.lang.String name)
        Returns the first attribute value for a specified attribute
        Parameters:
        name -
        Returns:
        the first attribute value for a specified attribute, may be null
      • getAuthority

        public java.lang.String getAuthority()
        If the GrantedAuthority can be represented as a String and that String is sufficient in precision to be relied upon for an access control decision by an AccessDecisionManager (or delegate), this method should return such a String.

        If the GrantedAuthority cannot be expressed with sufficient precision as a String, null should be returned. Returning null will require an AccessDecisionManager (or delegate) to specifically support the GrantedAuthority implementation, so returning null should be avoided unless actually required.

        Specified by:
        getAuthority in interface GrantedAuthority
        Returns:
        a representation of the granted authority (or null if the granted authority cannot be expressed as a String with sufficient precision).
      • equals

        public boolean equals​(java.lang.Object o)
        Compares the LdapAuthority based on getAuthority() and getDn() values
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object