Class RolePreprocessingMapper

  • All Implemented Interfaces:
    org.springframework.beans.factory.InitializingBean, org.springframework.security.ldap.userdetails.UserDetailsContextMapper

    public class RolePreprocessingMapper
    extends org.springframework.security.ldap.userdetails.LdapUserDetailsMapper
    implements org.springframework.beans.factory.InitializingBean
    Extension of LdapUserDetailsMapper which extracts the value of the component named tokenName within any attribute in roleAttributes.

    Example LDIF:

            dn: uid=admin,ou=users,ou=system
            ...
            uniqueMember: cn=ceo,ou=roles
     
    Assume that you want the value of the cn component within the value of the uniqueMember attribute to be used as the role name. You would use mapper.setTokenName("cn") or the equivalent to this setter call in your Spring beans XML.
    Author:
    mlowery
    • Constructor Detail

      • RolePreprocessingMapper

        public RolePreprocessingMapper()
      • RolePreprocessingMapper

        public RolePreprocessingMapper​(String tokenName)
    • Method Detail

      • createAuthority

        protected org.springframework.security.core.GrantedAuthority createAuthority​(Object role)
        Overrides:
        createAuthority in class org.springframework.security.ldap.userdetails.LdapUserDetailsMapper
      • preprocessRole

        protected Object preprocessRole​(Object role)
      • setTokenName

        public void setTokenName​(String tokenName)
      • getTokenName

        public String getTokenName()
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        Exception