我一直在尝试使用ldap.js对Active Directory Windows 2008服务器进行身份验证 . 唯一的目标是对服务器进行身份验证,我正在使用客户端(不创建新服务器,这就是所有documentation的内容) . 我对LDAP完全不熟悉,因此,使用用户名_2486507进行身份验证在ldap.js中无法正常工作,但在ldapsearch中进行身份验证: ldapsearch -H ldap://192.168.1.212:389 -x -D 'MYDOMAIN\myuser' -w pa33w0rd -LLL -b "dc=mydomain" '(sAMAccountName=myuser)'
成功进行身份验证但随后吐出 Referral (10)
.
用 client.bind("MYDOMAIN\myuser", 'pa33w0rd', function(err) { ... } );
尝试在ldap.js中失败 49 InvalidCredentialsError 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, ...
尝试重新编写MYDOMAIN \ myuser作为Distingushed Name dn:cn = myuser,dc = mydomain也会在ldap搜索中失败并出现auth错误 . 将DOMAIN \ USER(域反斜杠用户格式)转换为DN的正确方法是什么?
1 回答
来自http://www.rlmueller.net/NameTranslateFAQ.htm:
因此,NT格式(域反斜杠用户)登录名
MYDOMAIN\myuser
可以映射到cn=myuser,cn=Users,dc=mydomain,dc=com
或cn=myuser,cn=Users,dc=mydomain,dc=local
或其他一些 . 我建议你查看AD服务器的hosts文件或DNS域名 . 您还应该更改-b(基础)以包括dc = com或dc = local,或者修改引用错误的任何内容 .