我的应用程序具有更改密码的功能。
我使用BCryptPasswordEncoder
对密码进行编码并添加到数据库中,Spring Security可以使用以下代码处理:
@Autowired
public void configureGlobal(AuthenticationManagerBuilder authentication) throws Exception {
authentication
.jdbcAuthentication()
.dataSource(dataSource)
.passwordEncoder(new BCryptPasswordEncoder());
}
我正在尝试将其实现到Controller中,用户必须键入当前密码。调用BCryptPasswordEncoder
并加密密码但与密码存储在DB中的密码不匹配。
有什么想法解决这个问题吗?
答案 0 :(得分:0)
在评论部分的帮助下,我得到了答案。
我现在使用来自rawPassword
的{{1}}函数将encodedPassword
与matches()
进行比较。
我做的是:
BCryptPasswordEncoder