如何全面升级spring-boot-2.x及Spring-security-oauth2

本文介绍了在将Spring Boot从1.5.x升级到2.5.14,Spring Security OAuth2从2.x升级到2.1.0.RELEASE后,遇到的登录回跳问题。问题在于UsernamePasswordAuthenticationFilter未拦截POST请求,导致登录失败。通过源码分析发现是NotOauthRequestMatcher匹配规则变化引起的。解决方案是调整NotOauthRequestMatcher的匹配规则,避免截胡自定义登录接口。
摘要由CSDN通过智能技术生成

背景介绍

老的项目基于spring-boot-1.5.x、spring-security-oauth2-2.x实现的sso,在近期的安全漏洞扫描中发现如下2个漏洞:

漏洞 涉及jar 修复方案
Spring Framework JDK >= 9 远程代码执行漏洞(CVE-2022-22965) spring-core-4.3.12.RELEASE.jar 升级官方安全版本 >= 5.3.18/5.2.20
Spring Security RegexRequestMatcher 认证绕过漏洞(CVE-2022-22978) spring-security-core-4.2.3.RELEASE.jar 5.5.x 版本使用者建议升级至5.5.7及其以上;
5.6.x 版本使用者建议升级至5.6.4及其以上

然后笔者的同事将spring-boot升级到了2.5.14;将spring-security-oauth2升级到了2.1.0、RELEASE,这样一来,spring-core的版本被间接的升级到了5.3.20,spring-security-core版本变成了5.5.8(主要是spring-boot决定的)。

因为spring-boot-1.x和2.x之间的差距,同步的对项目依赖和代码做了微调。这里不再列出。不是今天的重点。

项目终于能成功启动了,但是一个致命的问题出来了,登录成功后,不能正确的回跳到redirect_uri指定的地址。这里如果你对spring-security-oauth2实现登录认证不熟悉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值