по умолчанию весенняя загрузка 2.1.x поддерживает spring-security-core-5.1.x , которые обычно генерируют bcrypt версии $ 2a
Эта версия не поддерживает BCryptPasswordEncoder с другимиверсии.
Если вы хотите использовать другие версии, вам нужно обновить spring-security-core версия
Добавить ниже в вашем pom.xml
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
затем создайте ваш BCryptPasswordEncoder bean, как показано ниже
@Bean(name = "passwordEncoder")
public BCryptPasswordEncoder getPasswordEncoder() {
BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(BCryptVersion.$2B);
return bCryptPasswordEncoder;
}
вы можете передать желаемую версию в конструктор BCryptPasswordEncoder.
возможные значения
- BCryptVersion. $ 2A
- BCryptVersion. $ 2Y
- BCryptVersion. $ 2B