kisso = cookie sso 基于 Cookie 的 SSO 中间件,它是一把快速开发 java Web 登录系统(SSO)的瑞士军刀。详细内容请访问网站https://gitee.com/baomidou/kisso原理图如下:
kisso实现单点登录,虽然已经是很几年前的东西了,更新也很少,但是对于一些简单的、安全性要求低的网站或者系统依然可以使用,使用适合自己的才是最好的。现在的版本最高是3.7.5,完善了很多功能修改了很多bug,但是使用struts的用户发现源码里边没有KissoConfigListener这个类,其实这这个版本较之前3.6.x更改了很多东西,使用springboot+kisso相当的方便,只需要application.properties简单几行配置就可以了,但是依然有很多项目是用struts所以使用或者升级出现问题,废话一堆,现在入正题。
要解决这个问题,其实很简单,因为kisso代码是开放的,大家copy一份改改源码就可以了,我们可以添加KissoConfigListener类,如果不知道如何写最简单就是参考3.6.x里边的代码(如果没有相应版本源码可以反编译class查看),或者可以实现自己的监听器,KissoConfigListener主要的作用就是读取sos.properties里边的配置初始化SSOConfig,所以我们知道作用就很好解决。我们甚至可以不使用监听器 直接实例化一个SSOConfig对象,调用SSOConfig.init(SSOConfig ssoConfig)也可以。
注意事项:struts集成3.7.5可能会涉及到缺包,以下是我一个demo中使用的包列表如下
commons-fileupload-1.3.1.jar
commons-io-2.2.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
fastjson-1.2.58.jar
freemarker-2.3.19.jar
jackson-annotations-2.8.0.jar
jackson-core-2.8.11.jar
jackson-coreutils-1.6.jar
jackson-databind-2.8.11.3.jar
jackson-dataformat-yaml-2.8.11.jar
javassist-3.11.0.GA.jar
jjwt-0.9.1.jar
kisso-3.7.5.jar
log4j-1.2.14.jar
log4j-1.2.17.jar
log4j-over-slf4j-1.7.25.jar
ognl-3.0.6.jar
slf4j-api-1.7.25.jar
slf4j-ext-1.7.25.jar
slf4j-log4j12-1.6.1.jar
struts2-core-2.3.16.1.jar
xwork-core-2.3.16.1.jar
如果老项目jdk版本较低上边包报错,可以自己打包源码试试,或者使用低版本的kisso。
demo源码在此:https://download.csdn.net/download/angrybirds0527/11459188
网友评论