【发布时间】:2017-08-24 13:38:00
【问题描述】:
我需要从 java 中针对 Active Directory 对用户进行身份验证。为了了解幕后发生的事情,我从这里开始使用 openldap docker 实例和 spring 教程: https://spring.io/guides/gs/authenticating-ldap/
我从许多调试会话中了解到,Spring 从 ldap 检索密码属性并将其与散列用户密码进行比较,或者它只是通过 uid 和散列密码过滤用户,如果有条目则密码是正确的。
好的,听起来不错。现在我正在尝试对 Active Directory 做同样的事情。问题是当我从中检索用户时,它给了我很多属性,但它没有给我任何看起来像散列密码的属性。所以也许 Active Directory 不允许获取密码属性,我应该按此属性过滤用户。但我不知道它的名字,也不知道从哪里得到它。
所以我的问题是: 1. 我理解的一切正确吗? 2. 我只需要通过 uid 和哈希密码过滤用户吗? 3.如果第二个是正确的,那么用户过滤的查询是什么? 4. 如果第二个不正确,那我理解错了什么?我应该如何从 java 中针对 Active Directory 对用户进行身份验证?
【问题讨论】:
标签: java spring authentication active-directory