我已经像这样窃取了我的密码:
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
String hashedPassword = passwordEncoder.encode(password);
现在我将如何使用自定义弹簧身份验证验证登录用户名和密码
public Authentication authenticate(Authentication authentication) throws AuthenticationException{
}
在此内部如何使用BCryptPasswordEncoder
来匹配登录密码是否正确
答案 0 :(得分:0)
您的身份验证方法的核心可能类似于:
String rawPassword = (String)authentication.getCredentials();
if (!passwordEncoder.matches(rawPassword, hashedPassword)) {
throw new BadCredentialsException("Wrong password");
}