从Spring Security 3.1.4.RELEASE开始,旧的org.springframework.security.authentication.encoding.PasswordEncoder 已经被弃用了org.springframework.security.crypto.password.PasswordEncoder.由于我的应用尚未向公众发布,我决定转向新的,而不是弃用的API.
到目前为止,我有一个ReflectionSaltSource自动使用用户的注册日期作为每用户盐密码.
String encodedPassword = passwordEncoder.encodePassword(rawPassword, saltSource.getSalt(user));
Run Code Online (Sandbox Code Playgroud)
在登录过程中,Spring还使用我的bean来验证用户是否可以登录.我无法在新密码编码器中实现这一点,因为SHA-1的默认实现 - StandardPasswordEncoder只能添加全局编码器创建过程中的秘密盐.
有没有合理的方法如何使用未弃用的API进行设置?