Pio*_*pla 2 java ldap teamsite
我正在使用相当古老的大型CMS(TeamSite),它有一个如何将其连接到LDAP服务器的示例.我已经阅读了这个例子,它以非常奇怪的方式工作.它只是按预期在"userPassword"字段中存储密码,但它手动执行验证而不是使用bind命令.
这对我没有意义,但我可能在这里错了,因为我以前没有使用过LDAP服务器.你知道为什么有人想手动比较密码而不是使用bind吗?
以下是代码的外观:
Attribute attrPassword = attrs.get("userPassword");
if (attrPassword.size() > 0)
{
String storedPassword = new String((byte[])attrPassword.get(0));
if (password.equals(storedPassword))
{
///.....
Run Code Online (Sandbox Code Playgroud)
这对我来说也没有意义.LDAP中的密码不应该是实际的密码本身,它应该是密码的哈希值.如果你检索字段并进行比较,你需要知道它正在使用什么类型的哈希,并以相同的方式哈希你自己比较的密码.它还要求userPassword
LDAP 中的属性可用于检索,这是不必要的,我不认为.
简而言之,不......我认为你应该使用bind.
归档时间: |
|
查看次数: |
1313 次 |
最近记录: |