使用 ldapsearch 身份验证失败
authentication failed using ldapsearch
我使用 Apache Directory Studio 创建了一个本地 ldap 服务器。使用 uid "djiao1" 和密码“123456”(SHA 散列密码)创建用户条目。
我能够使用以下 ldapsearch 命令搜索用户:
ldapsearch -H ldap://localhost:10389 -x uid=djiao1
# extended LDIF
#
# LDAPv3
# base <> (default) with scope subtree
# filter: uid=djiao1
# requesting: ALL
#
# djiao, Users, example.com
dn: cn=djiao,ou=Users,dc=example,dc=com
sn: jiao
cn: djiao
objectClass: top
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
userPassword:: e3NoYX1mRXFOQ2NvM1lxOWg1WlVnbEQzQ1pKVDRsQnM9
uid: djiao1
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
但是,如果我 运行 使用 -W 提示密码并输入“123456”,我会得到 "invalid credentials" 错误:
ldapsearch -H ldap://localhost:10389 -W -x uid=djiao1
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
additional info: INVALID_CREDENTIALS: Bind failed: Invalid authentication
我尝试了显示为 userPassword e3NoYX1mRXFOQ2NvM1lxOWg1WlVnbEQzQ1pKVDRsQnM9
的很长的字符串,但仍然出现相同的错误。
下图验证成功,用户密码为123456。为什么密码不起作用?
我想你的问题是你没有使用登录名,而是使用密码,
尝试这样的事情:
ldapsearch -x -LLL -H ldap://localhost:10389/ -b dc=example,dc=com -D "cn=djiao,ou=Users,dc=example,dc=com" -w 123456 uid=djiao1
关键时刻这里是你使用密码的完整用户名:
cn=djiao,ou=Users,dc=example,dc=com
我使用 Apache Directory Studio 创建了一个本地 ldap 服务器。使用 uid "djiao1" 和密码“123456”(SHA 散列密码)创建用户条目。
我能够使用以下 ldapsearch 命令搜索用户:
ldapsearch -H ldap://localhost:10389 -x uid=djiao1
# extended LDIF
#
# LDAPv3
# base <> (default) with scope subtree
# filter: uid=djiao1
# requesting: ALL
#
# djiao, Users, example.com
dn: cn=djiao,ou=Users,dc=example,dc=com
sn: jiao
cn: djiao
objectClass: top
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
userPassword:: e3NoYX1mRXFOQ2NvM1lxOWg1WlVnbEQzQ1pKVDRsQnM9
uid: djiao1
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
但是,如果我 运行 使用 -W 提示密码并输入“123456”,我会得到 "invalid credentials" 错误:
ldapsearch -H ldap://localhost:10389 -W -x uid=djiao1
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
additional info: INVALID_CREDENTIALS: Bind failed: Invalid authentication
我尝试了显示为 userPassword e3NoYX1mRXFOQ2NvM1lxOWg1WlVnbEQzQ1pKVDRsQnM9
的很长的字符串,但仍然出现相同的错误。
下图验证成功,用户密码为123456。为什么密码不起作用?
我想你的问题是你没有使用登录名,而是使用密码, 尝试这样的事情:
ldapsearch -x -LLL -H ldap://localhost:10389/ -b dc=example,dc=com -D "cn=djiao,ou=Users,dc=example,dc=com" -w 123456 uid=djiao1
关键时刻这里是你使用密码的完整用户名:
cn=djiao,ou=Users,dc=example,dc=com