LDAP Поиск пользователя в Active Directory с помощью UPN

Я использую аутентификацию LDAP, нужна помощь

Предположим, у меня есть пользователь (user1@zzservers.ad), где zzservers.ad - это псевдоним UPN домена demo.com, и я уже знаю способ поиска пользователя в активном каталоге по домену.

Но знает ли кто-нибудь о том, как искать пользователя в активной директории по псевдониму UPN.

На самом деле, когда пользователь user1@zzservers.ad входит в приложение, я хочу знать, присутствует ли пользователь в AD, чтобы продолжить аутентификацию.

Любая помощь будет принята с благодарностью.

Спасибо

2 ответа

Решение

Это более обычный пользовательский поиск:

public String findUserByUPN( LdapContext ctx, String username )
{
   // Domain name should be in DC=your,DC=domain,DC=com format
   String domain = "DC=demo,DC=com";
   String filter = "(userPrincipalName=" + username + ")" ;
   NamingEnumeration<SearchResult> results = ctx.search( domain, filter, null );
   while ( results.hasMore() )
   {
       SearchResult result = results.next();
       // If you get a result here, the user was found
       return result.getNameInNamespace();
   }
   return null;
}

Не уверен, что вы пытаетесь достичь, но фильтр как:

(userPrincipalName=jim@YOURDOMAIN.NET)

Находит пользователя по значению атрибута userPrincipalName. -Джим

Другие вопросы по тегам