【发布时间】:2018-07-25 11:12:33
【问题描述】:
我坚持使用 spring ldaptemplate 身份验证方法在使用组字符串时返回零计数,字符串如下所示。
CN=Jirra-Acdolite-DG,OU=Jira Security Group,OU=Apps Security Group,OU=Security Groups,OU=Global,OU=BT,DC=barcadero,DC=com
我们正在尝试使用以下代码使用 ldap 用户组。
try {
LdapContextSource ctxSrc = new LdapContextSource();
ctxSrc.setUrl(url);
// ctxSrc.setBase(base);
ctxSrc.setUserDn(ManagerDn);
ctxSrc.setPassword(ManagerPassword);
ctxSrc.setReferral("follow");
ctxSrc.afterPropertiesSet();
LdapTemplate ldapTemplate = new LdapTemplate(ctxSrc);
System.out.println("50");
ldapTemplate.afterPropertiesSet();
AndFilter andfilter = new AndFilter().and(new EqualsFilter("objectCategory", "person"))
.and(new EqualsFilter("objectClass", "user")).and(new EqualsFilter(SearchAttributes, userDn))
.and(new EqualsFilter("memberOf:1.2.840.113556.1.4.1941:",
"CN=Jirra-Acdolite-DG,OU=Jira Security Group,OU=Apps Security Group,OU=Security Groups,OU=Global,OU=BT,DC=barcadero,DC=com
")); System.out.println(andfilter); if (!ldapTemplate.authenticate(base, andfilter.encode(), password, new AuthenticationErrorCallback() { 公共无效执行(异常e){ System.out.println("异常"); } })) { System.out.println("False\n"); } 别的 { System.out.println("成功"); }
但是我们总是得到 False 值和 Group 字符串。如果有任何帮助,谢谢。
如下所示的错误信息。
2018 年 2 月 15 日 12:32:52 AM org.springframework.ldap.core.LdapTemplate 认证 信息:未找到搜索结果,基础: CN=Jirra-Acdolite-DG,OU=Jira Security Group,OU=Apps Security Group,OU=Security Groups,OU=Global,OU=BT,DC=barcadero,DC=com
【问题讨论】: