spring-cloud-oauth2升级版本遇到的认证报bad credentials,Encoded password does not look likebcrypt的问题

本文记录了在将Spring Boot从1.5.9.RELEASE升级到2.0.3.RELEASE,Spring Cloud从Dalston.SR1升级到finchley.RELEASE后,遇到OAuth2认证报错'Bad client credentials'的问题。问题根源在于BCryptPasswordEncoder的使用。通过查阅资料,找到了解决方案,只需修改一行代码即可解决问题,即使用BCrypt直接加密密码。但此改动导致原有数据库中密码格式改变,为避免修改大量数据,最后选择恢复到直接使用BCrypt加密方式,成功解决了升级后的认证问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录一下今天工作的时候升级一个认证服务遇到的小问题,虽然最后解决只有一行代码,却花了差不多3个小时。

初始版本为

springboot 1.5.9.RELEASE
springcloud Dalston.SR1

升级为

springboot 2.0.3.RELEASE
springcloude finchley.RELEASE

升级改造完成之后,服务运行正常,但是请求认证的时候报错:

http://localhost:9000/oauth/token?grant_type=password&scope=app&client_id=client_2&client_secret=123456&username=user&password=123456

回复

{
“error”: “invalid_client”,
“error_description”: “Bad client credentials”
}

查看后端代码log

2018-09-12 00:49:40.910 WARN 519 — [nio-9000-exec-2] o.s.s.c.bcrypt.BCryptPasswordEncoder : Encoded password does not look like BCrypt</

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值