Liferay门户无法正常工作的LDAP配置

时间:2014-05-05 17:42:36

标签: java liferay liferay-6

我需要使用组织LDAP配置Liferay。

我的要求是按需(登录时)将用户导入Liferay数据库。

当我尝试使用在LDAP中映射到 sAMAccountNumber 的屏幕名称进行登录时,我得到了

  

身份验证失败错误

我也没有在db中看到任何用户导入。

经过大量调试后,看起来生活LDAP连接成功完成。但是没有从LDAP返回结果。

我在日志中看到类似的内容。


  

转换前搜索过滤器   (sAMAccountName = @screen_nameâ€'<@)
搜索过滤器后   转换(sAMAccountName = @screen_name’<@)


我不知道为什么最后会附加垃圾字符。

应该只是

  

“sAMAccountName = @ screen_name @”

任何快速指针都会有所帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

经过大量的调试和服务器重启后,我终于知道了这个问题。希望它可以帮助别人。

如我的问题所示,有一些垃圾字符被附加到认证搜索过滤器,这就是它没有用我在登录屏幕上输入的实际值替换SAMAccountNamr的原因。

这个垃圾字符在我使用的文本编辑器中不可见,因此对人眼来说是不可见的。

只有当我将文本编辑器编码更改为ANSI时,我才能看到这些垃圾字符。我真的不知道字符编码是如何工作的,我试着想一想文本编辑器是否隐藏了什么。我从教程即网页中复制了这个字符串,这可能是这些垃圾字符被附加的原因。

删除后,一切都很好。感谢Pavel在调试过程中提出的建议。