我有一个活动目录,看起来像这样:
gdcmpny.com
|__GoodCompany
|
|__NYC
| |__Users
|
|__SF
|__Users
当用户向我发送他的用户名+密码时,我不知道他是在NYC / Users还是SF / Users下。有没有办法复合这样的字符串:
CN=Users,OU=%s,OU=GoodCompany,DC=gdcmpny,DC=com
因此ldap请求会同时出现在NYC / Users和SF / Users中吗?还是必须指定确切的绝对路径?
我正在使用Go来发送请求,并带有github.com/jtblin/go-ldap-client包。
谢谢!
答案 0 :(得分:0)
很遗憾,不在Microsoft Active Directory上。
有一个叫ExtensibleMatch的东西,但有not supported on Microsoft Active Directory。
-吉姆
答案 1 :(得分:0)
您不需要将完全限定的DN用于针对Active Directory服务器的LDAP绑定。您可以使用sAMAccountName和userPrincipalName值对AD LDAP进行身份验证...,前提是您在单个林中只有一棵树,这些树是通过将用户提供的登录ID与字符串连接起来形成的。
对于具有旧域名GDCMPNY的AD域gdcmpny.com,登录ID为MyUserName的用户具有userPrincipalName MyUserName@gdcmpny.com 和sAMAccountName为 GDCMPNY \ MyUserName 它们的ID在目录结构中的位置。
如果您在目录林中有多个域,而又不能简单地知道要添加到用户ID的正确字符串,则可以在已知的系统凭据下绑定,搜索用户-提供的登录ID,并返回匹配条目的标准DN(FQDN)。然后,使用FQDN和用户提供的密码来验证用户的凭据。
答案 2 :(得分:0)
字符串格式,例如:
CN=Users,OU=%s,OU=Goenter code hereodCompany,DC=gdcmpny,DC=com
不受支持,但我不能在请求中指定整个层次结构。
这对我有用:
OU=GoodCompany,DC=gdcmpny,DC=com