目前,该应用程序正在进行重大升级,因此我将Spring Security 3迁移到Spring Security 5.8.3。
我知道我们可以通过使用纯文本--> md5散列--> bcrypt update将md5转换为brcypt。
但主要的问题是MD5哈希。
由于它已经被弃用,我正在检查createDelegatingPasswordEncoder()方法的实现,下面的代码显示为depricated
encoders.put("MD5", new org.springframework.security.crypto.password.MessageDigestPasswordEncoder("MD5"));
我试着用下面的代码,但它没有工作
PasswordEncoder encoders = PasswordEncoderFactories.createDelegatingPasswordEncoder();
encoders.setDefaultPasswordEncoderForMatches(new MessageDigestPasswordEncoder("MD5"));
真的很感激它,如果有人能帮助我如何可以用户登录与他们的md5散列密码。
只是希望用户可以登录一次,因为成功登录后,我可以更新MD5哈希到Brypt
我还为passwordencoder创建了一个bean
<bean id="passwordEncoder"
class=" org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder" />
1条答案
按热度按时间vq8itlhq1#
如果你查看源代码,MD5编码器被称为
MessageDigestPasswordEncoder
,然后你将其公开为bean,它应该被框架自动拾取,只要你不做任何奇怪的自定义身份验证,这是不好的做法。