Active directory Active Directory登录问题

Active directory Active Directory登录问题,active-directory,ldap,Active Directory,Ldap,我的广告安装中有2个用户具有相同的CN CN=jack,CN=Users,DC=xyz,DC=com and CN=jack,OU=abc,DC=xyz,DC=com 当我尝试使用Apache Directory Studio客户端对AD服务器进行身份验证并提供以下凭据时 User: jack Password: <password> 无需指定整个DN(CN=tom,DC=xyz,DC=com) 我需要编写一个模块,根据广告安装对用户进行身份验证。我只有用户名和密码

我的广告安装中有2个用户具有相同的CN

   CN=jack,CN=Users,DC=xyz,DC=com and 
   CN=jack,OU=abc,DC=xyz,DC=com
当我尝试使用Apache Directory Studio客户端对AD服务器进行身份验证并提供以下凭据时

User: jack
Password: <password>
无需指定整个DN(
CN=tom,DC=xyz,DC=com

我需要编写一个模块,根据广告安装对用户进行身份验证。我只有用户名和密码,没有完全限定的基本DNs。我无法绑定到AD服务器以使用过滤器,如
(&(objectCategory=person)(objectClass=user)(sAMAccountName=jack))
。当有多个用户使用同一个CN时,问题似乎会发生,我该怎么做


编辑:我可以将广告服务器配置为根据用户的邮件地址/sAMAccountName而不是CN进行绑定吗?这将解决我的问题,因为这些是唯一的,而CN不是

您在“模块”中使用的是哪种登录?如果您不能绑定并执行ldap查询,那么您使用什么接口登录?您需要配置使用sAMAccountName的任何内容,因为这是每个域名唯一受保护的唯一名称。当然,如果林中有多个域,那么每个域中的域都必须是唯一的,所以这可能不太好


如果您只能作为用户进行LDAP绑定,而不能进行查询。也许您可以在通过credentails时尝试以sAMAccountname=jack的身份进行连接。

我找到了我要查找的属性-->
userPrincipalName
(UPN)。这在Active Directory中具有唯一值,可以在尝试进行身份验证时作为用户名提供。所以现在我需要一个UPN列表和相应的登录密码

也检查一下

User: CN=jack,CN=Users,DC=xyz,DC=com
Passwprd: <password>
User: tom
Password: <password>