XXL-SSO v1.2.0发布,单点登录框架是?
摘要:Release Notes 1、【重构】XXL-SSO 核心代码重构,基于“模块化”与“渐进式”设计思想,在轻量级、高扩展、渐进式的基础上,强化多登录类型、多认证方式等系统能力; 2、【增强】渐进式:支持渐进式集成接入使用,从简单到复杂场景
Release Notes
1、【重构】XXL-SSO 核心代码重构,基于“模块化”与“渐进式”设计思想,在轻量级、高扩展、渐进式的基础上,强化多登录类型、多认证方式等系统能力;
2、【增强】渐进式:支持渐进式集成接入使用,从简单到复杂场景,包括:单体系统(Web常规登录)、复杂企业内多系统(CAS单点登录)、互联网多端&高并发系统(Native登录) 等,均可接入使用;
3、【增强】多登录类型:
登录态持久化组价(LoginStore):提供登录态/会话数据持久化能力;官方提供Cache、Redis等组件实现,可选用接入或自定义扩展;
登录认证组件(Auth):提供系统登录/认证集成能力;官方提供 Filter(Servlet)和Interceptor(Spring)等实现,可选用接入或自定义扩展;
登录用户模型(LoginInfo):提供统一登录用户模型,且模型支持扩展存储自定义扩展属性;
4、【增强】多登录类型:
Web常规登录:适用于常规“单体系统”场景;限制相关Web系统部署在相同域名下,登录凭证存储在公共域名下;
Native登录:适用于“移动端、小程序、前后端分离、客户端”等系统场景;适用于无Cookie场景,天然不受限域名。支持多端登录、以及登录态共享,但是登录凭证需要客户端管理维护;
CAS单点登录:适用于“多系统跨域、企业多系统统一登录”等系统场景;解决了系统 跨域登录认证、统一登录认证 问题;但是需要单独部署CAS认证中心、提供单点登录相关基础能力;
5、【新增】安全性:针对系统框架多个模块落地安全性设计,包括:登录Token安全设计、客户端登录凭证Cookie安全设计、CAS跳转Ticket安全设计 等;
6、【优化】升级多项依赖至较新版本;
项目接入示例
XXL-SSO 作为单点登录框架,支持业务渐进式集成接入使用。结合系统及业务特征差异,仓库代码提供三种业务中接入示例:
1、Web常规登录:适用于常规“单体系统”场景;限制相关Web系统部署在相同域名下,登录凭证存储在公共域名下;
2、Native登录:适用于“移动端、小程序、前后端分离、客户端”等系统场景;适用于无Cookie场景,天然不受限域名。支持多端登录、以及登录态共享,但是登录凭证需要客户端管理维护;
3、CAS单点登录:适用于“多系统跨域、企业多系统统一登录”等系统场景;解决了系统 跨域登录认证、统一登录认证 问题;但是需要单独部署CAS认证中心、提供单点登录相关基础能力;
此处以 “Web常规登录” 为例进行讲解:
(**三种登录方式完整接入示例参考项目文档,如有需求可前往查看* *)
第一步:添加maven依赖以及 XXL-SSO 配置文件
### xxl-sso 登录凭证/token传输key, 用于cookie、header登录凭证传输;
xxl-sso.token.key=xxl_sso_token
### xxl-sso 登录凭证/token超时时间,单位毫秒;
xxl-sso.token.timeout=604800000
### xxl-sso 登录态持久化配置,如下为Redis组件相关配置;
xxl-sso.store.redis.nodes=127.0.0.1:6379
xxl-sso.store.redis.user=
xxl-sso.store.redis.password=
### xxl-sso 登录态存储,Redis key前缀
xxl-sso.store.redis.keyprefix=xxl_sso_user:
### xxl-sso 客户端过滤排除路径,如 "/excluded/xpath"?"/excluded/xpath,/excluded/*"
xxl-sso.client.excluded.paths=/weblogin/*,/static/**
### xxl-sso 客户端登录页路径
xxl.sso.client.login.path=/weblogin/login
第二部:配置 XXL-SSO 组件
配置组件代码参考:xxl-sso-sample-web/src/main/java/com/xxl/sso/sample/config/XxlSsoConfig
第三部:代码中接入使用
接入 XXL-SSO 之后,业务可通过 注解 or API 进行 登录验证、权限验证。
