我已将OpenDJ
与OpenAM
进行了整合。在OpenDJ
中创建的用户会反映在OpenAM
中,并且可以登录OpenAM
。我在SHA-1
中使用OpenDJ
作为密码存储方案。 OpenDJ
还从Liferay导入用户,该用户还具有SHA-1
密码存储方案。问题是我无法登录OpenAM。登录失败。
为什么在OpenDJ
中创建的用户可以登录OpenAM
而不是从Liferay导入的用户,尽管用户也会在OpenAM中反映出来?如何解决这个问题?
答案 0 :(得分:1)
您可以检查OpenAM auth模块调试日志..不确定您使用的是哪个auth模块。
如果使用LDAP auth模块,则OpenAM执行LDAP“BIND”操作。密码在服务器端进行比较,而不是客户端(OpenAM)端。 BTW密码以明文形式从OpenAM发送到OpenDJ。
-Bernhard
答案 1 :(得分:1)
使用Ludovic和Bernhard提供的帮助,Liferay似乎没有在OpenDJ中创建密码,因为我的新用户最终会输入以下内容:
userPassword:{NONE} null
这似乎是版本6.1的bug。据说在预发布中固定。
答案 2 :(得分:1)
您可以尝试使用嗅探器检查Liferay写入OpenDJ的内容。默认 ldap.auth.password.encryption.algorithm是NONE,具有有趣的效果 在OpenDJ中使用{NONE}算法创建密码,然后使用OpenDJ创建密码 不喜欢这些。您可以尝试添加
ldap.auth.password.encryption.algorithm=SHA1
到Liferay portal-ext.properties文件。