Class UserPrincipalNameSearchMapper

  • All Implemented Interfaces:
    UsernameSearchMapper

    public class UserPrincipalNameSearchMapper
    extends Object
    implements UsernameSearchMapper
    A mapper for the AD attribute userPrincipalName. This mapper maps the GSS name to the AD attribute userPrincipalName which by default contains the implicit UPN unless it's overwritten by the explicit (enterprise) UPN. In this case, the result will be empty. No assumption is made about the root DN set in the given context, so you can narrow down your search base if you like.
    • Field Detail

      • KRB5_NT_PRINCIPAL

        protected static final Oid KRB5_NT_PRINCIPAL
      • KRB5_NT_ENTERPRISE_PRINCIPAL

        protected static final Oid KRB5_NT_ENTERPRISE_PRINCIPAL
      • MS_UPN

        protected static final Oid MS_UPN
    • Constructor Detail

      • UserPrincipalNameSearchMapper

        public UserPrincipalNameSearchMapper()
    • Method Detail

      • supportsGssName

        public boolean supportsGssName​(GSSName gssName)
        Description copied from interface: UsernameSearchMapper
        Determines whether a mapper is able to map a given GSS name into AD search space.
        Specified by:
        supportsGssName in interface UsernameSearchMapper
        Parameters:
        gssName - the gssName to test
        Returns:
        if this mapper is able to map a name, false otherwise
      • map

        public UsernameSearchMapper.MappedValues map​(DirContext context,
                                                     GSSName gssName)
                                              throws NamingException
        Description copied from interface: UsernameSearchMapper
        Maps a GSS name to AD search space parameters. A mapper implementation must assure that the user can be found in the given context when an approriate GSS name is presented. The implementor must be aware that the returned search base might need to be relativized to the root DN of the context.
        Specified by:
        map in interface UsernameSearchMapper
        Parameters:
        context - the search context
        gssName - the GSS name to be mapped
        Returns:
        mapped values for user retrieval
        Throws:
        NamingException - if a context-related error has occured