为什么acegi(Spring Security)在比较之前将密码转换为大写?

时间:2010-06-12 13:54:26

标签: java spring-security

我的一位QA团队的同事向我报告了一个错误,该错误表示无法将密码更改为小写,否则登录被拒绝,使用数字或大写都很好。登录系统是使用acegi 1.0(现在称为Spring Security)实现的。

这是一个非常奇怪的错误,更改密码是通过将用户输入字符串加密到MD5字符串来完成的,我实现了这个而不使用任何相关的acegi,我不知道是否是问题的根本原因。

当登录被拒绝时,通过调试,我发现,当传递给acegi比较逻辑时,用户输入被acegi转换为大写。起初,我不相信这一点,当我检查acegi源并使用它进行调试时,我发现它确实将用户名和密码都转换为大写(source code line 121),你能告诉我为什么会这样做吗?这可能导致密码编码不匹配!

1 个答案:

答案 0 :(得分:0)

非常感谢,我团队中的一些人选择了Acegi的Siteminder实现,这是造成这个问题的原因。