我正在使用LDAP身份验证,需要帮助
假设我有一个用户(user1@zzservers.ad),其中zzservers.ad是demo.com域的UPN别名,我已经知道一种按域搜索活动目录中用户的方法。
但有没有人知道如何通过UPN别名搜索活动目录中的用户。
实际上当用户user1@zzservers.ad登录到应用程序时,我想知道AD中是否存在用户,以便进一步进行身份验证。
非常感谢任何帮助。
由于
答案 0 :(得分: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;
}
答案 1 :(得分:1)
不确定您要完成的是什么,但过滤器如下:
(userPrincipalName=jim@YOURDOMAIN.NET)
将根据userPrincipalName属性的值定位用户。 -Jim