Spring security SpringSecurity3.1中的小写比较发生了什么?

Spring security SpringSecurity3.1中的小写比较发生了什么?,spring-security,Spring Security,我最近从3.0升级到3.1,小写比较不再可用 在使用ldap服务器进行身份验证时,它发生了什么情况?我可以做些什么来确保区分大小写?我找到了一种方法来确保在登录过程中使用区分大小写 我将caseExactMatch添加到搜索过滤器中。我在下面粘贴了我的ldap身份验证提供程序的一部分,以帮助其他人解决同样的问题 <authentication-manager> <ldap-authentication-provider server-ref="ldapServer"

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


在使用ldap服务器进行身份验证时,它发生了什么情况?我可以做些什么来确保区分大小写?

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

我将caseExactMatch添加到搜索过滤器中。我在下面粘贴了我的ldap身份验证提供程序的一部分,以帮助其他人解决同样的问题

<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>


正如Luke所建议的,这似乎是另一种选择-request matcher=“ciRegex”(在3.1+中)到小写比较=“true”(3.0)。如果没有它,spring将与区分大小写进行比较。

我不理解这个问题
lowercase Comparison
是关于将传入的请求URL与定义的模式进行匹配的,并且被删除了,因为我们现在有了
RequestMatcher
接口,该接口封装了该行为,并且可以使用名称空间单独设置,所以两者都有意义。无论哪种方式,我都看不到与LDAP身份验证的连接。底线是我无法使Spring安全性区分大小写。我研究了这个话题,发现其他人也问过类似的问题,但没有得到回答。我最初没有使用小写比较,但我阅读的文档表明它是在3.1之前使用的,用于禁用区分大小写。关于你提到的内容,我记得在3.1文档中读到过一些关于这方面的内容,我很困惑为什么现在小写比较的用法与3.0不同。