由于公司项目在今年3月中下旬已经升级到springboot3了,项目整体没啥大问题;但是最近接到一个新的需求,需要集成sso,sso实现方式是基于cas的,也就是apereo下的cas,我相信了解sso的,一定了解这个框架。由于cas里面用了大量的过滤器,因此,cas也面临着,调整的命运,因为servlet包名换了,由javax调整为jakarta,相信大家使用springboot3时,这块知识点应该也会知道,那就意味着cas的v3.x之前版本都不支持jakarta的;我们幸福的是早在23年1月份,已经提供支持了,关键也支持了springboot3了,请看下面截图
同时也发布了稳定版本v4.0.1
特别提醒,v4.0.1的cas 的groupId也更换了,可以到官网详细了解;以前是org.jasig.cas.client
从maven的中央仓库也可以看到,第一个是老版本,更新是2021年;第二个是新版本,更新在2023年,基础了解后就没啥大问题了
按照之前方式进行接入即可;
同理服务端也同步已经支持调整了,后期建议大家采用最新的版本,这是时代发展的趋势了,为了更好的兼容后期相关系统或者组件、功能,建议采用支持jdk17
具体的请到开源官网进行查看:cas官网
不过,我在集成时采用了更简单方便的方式,就是使用了
<dependency> <groupId>net.unicon.cas</groupId> <artifactId>cas-client-autoconfig-support</artifactId> </dependency>
cas-client-autoconfig-support 自动配置,发现没有支持servlet最新版本,还是javax的老版本,其实这个包,不是很重要,咱们直接使用cas原生的配置也可以的,但是老项目有使用这个,所以我还是解决下,方便后期其他系统能同步升级到最新版本;Ok,咱们解决呢,本来想提个建议,让管理员进行更新,最后我也没提,我下载源码调整后,执行处理了,,大家可以采用简单方式,把cas-client-autoconfig-support源码拷贝到项目里,进行直接调整即可,依赖最新的casv4.0.1即可
拷贝到项目里,调整下即可;到此结束,使用方式和之前没啥区别