我想用liferay配置LDAP。
当我点击“测试LDAP连接”时,会显示一条消息“Liferay已成功连接到LDAP服务器。”
但是当我点击“测试LDAP用户”时,我会遇到异常。
20:36:38,193 ERROR [http-bio-8080-exec-7] [IncludeTag:253]当前网址/群组/ control_panel / manage?p_p_id = 130& p_p_lifecycle = 0& p_p_state = exclusive& p_p_mode = view& doAsGroupId = 10180& refererPlid = 10183& _130_struts_action =%2Fportal_settings%2Ftest_ldap_users生成异常:javax.servlet.ServletException:javax.naming.directory.InvalidSearchFilterException:空过滤器;剩余名称'ou =用户,ou =群组'
20:36:38,199 ERROR [http-bio-8080-exec-7] [IncludeTag:154] javax.naming.directory.InvalidSearchFilterException:空过滤器;剩余名称'ou =用户,ou =群组' at com.sun.jndi.ldap.Filter.encodeFilterString(Filter.java:38) 在com.sun.jndi.ldap.LdapClient.search(LdapClient.java:520) 在com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1962) 在com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1824) 在com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1749) at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:368) 在com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:338) at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:321) 在javax.naming.directory.InitialDirContext.search(InitialDirContext.java:248) 在com.liferay.portal.security.ldap.PortalLDAPUtil.searchLDAP(PortalLDAPUtil.java:760) at com.liferay.portal.security.ldap.PortalLDAPUtil.getUsers(PortalLDAPUtil.java:557) 在org.apache.jsp.html.portlet.portal_005fsettings.test_005fldap_005fusers_jsp._jspService(test_005fldap_005fusers_jsp.java:563) 在org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) 在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 在org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
我在portal-ext文件中设置了以下属性。 ldap.base.provider.url.0 = LDAP://本地主机:10389 ldap.base.dn.0 = OU =用户,OU =组
有什么建议吗?
答案 0 :(得分:0)
不知道Liferay是如何过滤的,我无法想象多个LDAP DN的分隔符将是这行中的逗号:
ldap.base.dn.0=ou=Users,ou=Groups
您的用户或组的DN似乎不太可能正确,并且指定多个位置的方式将使用逗号分隔它们,因为当然使用逗号分隔LDAP DN。
答案 1 :(得分:0)
尝试将“身份验证搜索过滤器”的值添加为(cn = @ screen_name @)