《分布式单点登录框架XXL-SSO》已开放源代码,开箱即用

今天老猫要跟大家分享一个开源项目XXL-SSO单点登录框架,开发者:许雪里,代码可以到码云跟github中下载。搜索项目名XXL-SSO。

《分布式单点登录框架XXL-SSO》已开放源代码,开箱即用

项目简介

XXL-SSO is a distributed single-sign-on framework. Users only need to log in once to access all trusted applications It's core design goal is to develop quickly and learn simple, lightweight, and easy to expand. Now, it's already open source, real "out-of-the-box".

XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码,开箱即用。

项目特点

  • 1、简洁:API直观简洁,可快速上手;

  • 2、轻量级:环境依赖小,部署与接入成本较低;

  • 3、单点登录:只需要登录一次就可以访问所有相互信任的应用系统。

  • 4、分布式:接入SSO认证中心的应用,支持分布式部署;

  • 5、HA:Server端与Client端,均支持集群部署,提高系统可用性;

  • 6、实时性:系统登陆、注销状态,全部Server与Client端实时共享;

  • 7、CS结构:基于CS结构,包括Server"认证中心"与Client"受保护应用";

  • 8、跨域:支持跨域应用接入SSO认证中心;

开发环境

  • JDK:1.7+

  • Redis:4.0+

  • Mysql:5.6+

架构图

《分布式单点登录框架XXL-SSO》已开放源代码,开箱即用

功能定位

XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。

借助 XXL-SSO,可以快速实现分布式系统单点登录。

核心概念

概念说明
SSO Server中央认证服务,支持集群;
SSO Client接入SSO认证中心的Client应用;
SSO SessionId登录用户会话ID,SSO 登录成功为用户自动分配;
SSO User 登录用户信息,与 SSO SessionId 相对应;

登录流程剖析

  • 用户于Client端应用访问受限资源时,将会自动 redirect 到 SSO Server 进入统一登录界面。

  • 用户登录成功之后将会为用户分配 SSO SessionId 并 redirect 返回来源Client端应用,同时附带分配的 SSO SessionId。

  • 在Client端的SSO Filter里验证 SSO SessionId 无误,将 SSO SessionId 写入到用户浏览器Client端域名下 cookie 中。

  • SSO Filter验证 SSO SessionId 通过,受限资源请求放行;

开源协议

GPL3.0

《分布式单点登录框架XXL-SSO》已开放源代码,开箱即用


分享到:


相關文章: