springsecurity 加密

Spring Security系列三 用户密码加密实现 ← 全文阅读

  • 阅读注意版本

在Spring Security中,对密码的加密都是由PasswordEncoder来完成的。

那什么时候会调用这个PasswordEncoder呢?这就要回到前面实现数据库登录认证时的DaoAuthenticationProvider了。在DaoAuthenticationProvider中,除了UserDetailsService之外还有其它的几个属性,其中一个就是PasswordEncoder,UserDetailsService前面我们已经实现了,现在要实现PasswordEncoder,密码加密功能主要就是靠它来完成。

想要使用密码加密就必须指定使用哪个PasswordEncoder,但是在AuthenticationManagerBuilder中并没有可以快速指定PasswordEncoder的地方,所以这里必须自己声明AuthenticationProvider,然后设置UserDetailsService和PasswordEncoder

你可能感兴趣的:(springsecurity)