Spring Security 3.1中的小写比较发生了什么?

时间:2013-01-19 03:03:34

标签: spring-security

我最近从3.0升级到3.1,小写 - 比较不再可用。

使用ldap服务器进行身份验证时,我发生了什么以及如何确保区分大小写?

2 个答案:

答案 0 :(得分:2)

我找到了一种确保在登录过程中使用区分大小写的方法。

我将caseExactMatch添加到搜索过滤器中。我已经粘贴在我的ldap-authentication-provider的一部分中,以帮助其他人处理同样的问题。

<authentication-manager>
<ldap-authentication-provider server-ref="ldapServer"  
   user-search-base="ou=users,dc=mydomain,dc=com" 
   user-search-filter="(uid:caseExactMatch:={0})"
   group-role-attribute="cn"
   group-search-base="ou=Groups,dc=mydomain,dc=com"
   group-search-filter="(uniqueMember={0})"
   role-prefix="ROLE_"
   user-details-class="inetOrgPerson" 
   />
</authentication-manager>

答案 1 :(得分:1)

正如Luke所建议的,这似乎是另一种选择 - request-matcher =“ciRegex”(在3.1+中)to lowercase-comparisons =“true”(3.0)。没有弹簧与情况敏感性进行比较。