LDAP 绑定允许不正确(非空白)密码
LDAP Bind allowing incorrect (non-blank) password
我们有一个客户 AD 系统,我们使用 LDAP 对用户进行身份验证,特别是通过使用他们的用户名和密码进行绑定。根据用户名的结构,错误密码的结果是不同的。如果我们在用户名中包含域名,那么任何密码都将 return 成为经过身份验证的结果。我已经为每个场景使用 LDP.exe 粘贴了一些结果:
绑定我的用户名和无效(非空白)密码:
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, 1158); // v.3
{NtAuthIdentity: User='[username]'; Pwd= <unavailable>; domain = 'DC=[domain],DC=co,DC=uk'.}
Error <49>: ldap_bind_s() failed: Invalid Credentials.
Server error: 8009030C: LdapErr: DSID-0C090585, comment: AcceptSecurityContext error, data 52e, v4563
绑定我的用户名@domain.org & 无效(非空白)密码:
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, 1158); // v.3
{NtAuthIdentity: User='[myusername@domain.org]'; Pwd= <unavailable>; domain = 'DC=[domain],DC=co,DC=uk'.}
Authenticated as dn:'[username@domain.org]'.
我注意到用户的完整用户名是 username@domain.org 并且提供给 LDAP 的域是 DC=domain,DC=co ,DC=uk,不确定这是否会有所作为?
有没有人知道可能导致此问题的原因以及是否有某种设置需要解决?
干杯。
域上是否启用了Guest account?如果是这样,任何随机凭据都将起作用。如果您使用有效的用户名,它只会告诉您密码不正确。
当您使用 myusername
格式时,它必须与帐户上的 sAMAccountName
属性匹配。如果您使用 myusername@domain.org
格式,它必须与帐户上的 userPrincipalName
匹配 - 因此 myusername@domain.org
可能不是您帐户的 userPrincipalName
。
我们有一个客户 AD 系统,我们使用 LDAP 对用户进行身份验证,特别是通过使用他们的用户名和密码进行绑定。根据用户名的结构,错误密码的结果是不同的。如果我们在用户名中包含域名,那么任何密码都将 return 成为经过身份验证的结果。我已经为每个场景使用 LDP.exe 粘贴了一些结果:
绑定我的用户名和无效(非空白)密码:
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, 1158); // v.3
{NtAuthIdentity: User='[username]'; Pwd= <unavailable>; domain = 'DC=[domain],DC=co,DC=uk'.}
Error <49>: ldap_bind_s() failed: Invalid Credentials.
Server error: 8009030C: LdapErr: DSID-0C090585, comment: AcceptSecurityContext error, data 52e, v4563
绑定我的用户名@domain.org & 无效(非空白)密码:
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, 1158); // v.3
{NtAuthIdentity: User='[myusername@domain.org]'; Pwd= <unavailable>; domain = 'DC=[domain],DC=co,DC=uk'.}
Authenticated as dn:'[username@domain.org]'.
我注意到用户的完整用户名是 username@domain.org 并且提供给 LDAP 的域是 DC=domain,DC=co ,DC=uk,不确定这是否会有所作为?
有没有人知道可能导致此问题的原因以及是否有某种设置需要解决?
干杯。
域上是否启用了Guest account?如果是这样,任何随机凭据都将起作用。如果您使用有效的用户名,它只会告诉您密码不正确。
当您使用 myusername
格式时,它必须与帐户上的 sAMAccountName
属性匹配。如果您使用 myusername@domain.org
格式,它必须与帐户上的 userPrincipalName
匹配 - 因此 myusername@domain.org
可能不是您帐户的 userPrincipalName
。