我正在使用Spring LDAP,我看到每个人都使用两个bind。第一个绑定为服务帐户,第二个绑定为具有给定密码的用户。但我发现即使没有第一次绑定,也可以执行针对ldap中密码的用户验证。
任何人都可以解释为什么我们在ldap中遵循两个绑定?使用服务帐户进行第一次绑定有什么意义?
答案 0 :(得分:3)
要在LDAP中进行身份验证,您需要拥有DN和密码。
通常,2个绑定的原因是您没有DN - 用户名不一定是DN的一部分。因此,您必须使用服务帐户按某些属性查找用户(DN),例如"邮件= {}邮件"然后通过再次绑定来验证找到的DN的密码。
在两种情况下可以使用单个绑定:
答案 1 :(得分:0)
有多种方法可以对LDAP进行身份验证。 您可以通过获取用户密码并在软件中进行匹配(一次绑定)来实现,也可以通过使用用户凭据绑定LDAP(两种绑定)来实现。
这两个绑定的东西如下:
1)获取用户名并在LDAP中搜索(使用服务帐户绑定1) 2)使用密码进行身份验证(使用用户帐户绑定2)
此致
Shelltux