spring-security-core 4.2.3升级到5.2.1的坑

从spring-security-core 4.2.3(springboot1.5.9)升级到5.2.1(springboot2.2.2)的坑

4.2.3中,grant_type类型为password时(其他类型应该也一样但未做验证),所指定的passwordencoder仅用于password加密,
client_secret 是使用spring自带的org.springframework.security.authentication.encoding.PlaintextPasswordEncoder加密的(也就是不加密)

spring-security-core 4.2.3升级到5.2.1的坑

5.2.1中org.springframework.security.authentication.encoding这个包已经取消
password和client_secret都使用指定的passwordencoder加密,所以升级上来的版本,oauth_client_details表中的client_secret需要转换。
spring-security-core 4.2.3升级到5.2.1的坑
否则oauth2在获取token时,filterchain中还未到验证用户名密码的部分时就因为client_secret不对跳出了。
在此记录