01.10 跨域+Cookie+Token+Web+APP均支持的分布式单点登录框架开箱即用

功能定位

XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有"轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持"等特性,开箱即用。

核心概念

跨域+Cookie+Token+Web+APP均支持的分布式单点登录框架开箱即用

登录流程剖析

  • 用户于Client端应用访问受限资源时,将会自动 redirect 到 SSO Server 进入统一登录界面
  • 用户登录成功之后将会为用户分配 SSO SessionId 并 redirect 返回来源Client端应用,同时附带分配的 SSO SessionId
  • 在Client端的SSO Filter里验证 SSO SessionId 无误,将 SSO SessionId 写入到用户浏览器Client端域名下 cookie 中
  • SSO Filter验证 SSO SessionId 通过,受限资源请求放行

功能特性

  1. 简洁:API直观简洁,可快速上手
  2. 轻量级:环境依赖小,部署与接入成本较低
  3. 单点登录:只需要登录一次就可以访问所有相互信任的应用系统
  4. 分布式:接入SSO认证中心的应用,支持分布式部署
  5. HA:Server端与Client端,均支持集群部署,提高系统可用性
  6. 跨域:支持跨域应用接入SSO认证中心
  7. Cookie+Token均支持:支持基于Cookie和基于Token两种接入方式,并均提供Sample项目
  8. Web+APP均支持:支持Web和APP接入
  9. 实时性:系统登陆、注销状态,全部Server与Client端实时共享
  10. CS结构:基于CS结构,包括Server"认证中心"与Client"受保护应用"
  11. 记住密码:未记住密码时,关闭浏览器则登录态失效;记住密码时,支持登录态自动延期,在自定义延期时间的基础上,原则上可以无限延期
  12. 路径排除:支持自定义多个排除路径,支持Ant表达式。用于排除SSO客户端不需要过滤的路径

架构图

跨域+Cookie+Token+Web+APP均支持的分布式单点登录框架开箱即用

项目地址:https://github.com/foryxs/xxl-sso

喜欢的小伙伴,点个关注吧,每天分享新的内容!


分享到:


相關文章: