《Spring Security3》第四章第三部分翻译上(密码加salt)

《Spring Security3》第四章第三部分翻译下(密码加salt)?你是否愿意在密码上添加点salt???【需要记住的是salt

《Spring Security3》第四章第三部分翻译下(密码加salt)

?

你是否愿意在密码上添加点salt?

?


?【需要记住的是salt被添加到明文的密码上,所以salt不能进行单向的加密,因为应用要查找用户对应的salt值以完成对用户的认证。】


?让我们通过配置ReflectionSaltSource实现salt密码,增加密码安全的等级。

声明SaltSource Spring bean

?我们配置salt source使用了username属性,这只是一个暂时的实现,在后面的练习中将会进行修正。你能否想到这为什么不是一个好的salt值吗?

将SaltSource织入到PasswordEncoder中

?回忆一下,SaltSource是要依赖UserDetails对象来生成salt值的。在这里,我们没有数据库行对应UserDetails对象,所以需要请求UserDetailsService(我们的CustomJdbcDaoImpl)的SQL查询以根据用户名查找UserDetails。

?重写基础的UserDetails实现

?createUserDetails和loadUsersByUsername重写了父类的方法——与父类不同的地方在代码列表中已经着重强调出来了。添加了这些变化,你可以重启应用并拥有了更安全、随机的salt密码。你可能会愿意加一些日志和实验,以查看应用运行期间和启动时用户数据加载时的加密数据变化。

?