XXL-SSO框架基础入门
Posted IT-老牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XXL-SSO框架基础入门相关的知识,希望对你有一定的参考价值。
文章目录
1.什么是XXL-SSO
XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有"轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持"等特性。现已开放源代码,开箱即用。
我们先登录XXL-SSO官网:https://www.xuxueli.com/xxl-sso/
2.特性
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客户端不需要过滤的路径
3. 官方Demo分析
首先我们从Github
克隆XXL-SSO
的源码到本地(https://github.com/xuxueli/xxl-sso.git
):
下载完源码,我们可以看到目录结构如下:
3.1 SSO Server中央认证服务
打开xxl-sso-server
目录,可以看到有如下结构:
他们分别表示:
打开xxl-sso-server的配置文件,可以看到需要配置Redis地址,在这里配置好Redis地址:
启动xxl-sso-server
日志文件的位置!
可以看到启动成功:
3.2 SSO Client应用(Cookie形式)
SSO
认证中心已经配置好并打开了,下面我们来看看SSO Client端。
打开samples下的xxl-sso-web-sample-springboot
项目,并配置redis
路径(与认证中心的一致):
在上图可以看到xxl.sso.server
对应的值为:http://xxlssoserver.com:8080/xxl-sso-server
,这里用到了域名,所以要在我们本地localhost
文件里配置域名
启动成功:
浏览器输入:http://xxlssoclient1.com:8081/xxl-sso-web-sample-springboot
可以看到自动跳转到了SSO
认证服务中心的登录页面了,url地址变为如下,可以看到携带了一个redirect_url,指的就是登录成功后重定向的地址:
http://xxlssoserver.com:8080/xxl-sso-server/login?redirect_url=http://xxlssoclient1.com:8081/xxl-sso-web-sample-springboot/
为了更好的验证单点登录,我们复制xxl-sso-web-sample-springboot
项目命名为xxl-sso-web-sample-springboot8083
,并设置端口号为8083
:
并在hosts文件增加配置:
启动复制的项目
好了,可以开始验证了。首先浏览器输入Client1服务地址:http://xxlssoclient1.com:8081/xxl-sso-web-sample-springboot
,会自动跳转到授权中心:
点击登录,可看到登录成功,而且登录成功后的sessionid在地址栏也能看到。
接下来看看Client2是否需要再次登录,浏览器输入:http://xxlssoclient2.com:8083/xxl-sso-web-sample-springboot
可以看到Client2也登录成功了,而且sessionid与Client1的一样。
最后,我们看看浏览器的Cookie信息,观察发现他们的sessionid也是一致的:
clinent1
client2
打开Redis可视化窗口,可以看到Redis服务器有保存SessionId:
4.总结
本文主要讲解了单点登录的相关概念,已经使用xxl-sso框架来做演示。
以上是关于XXL-SSO框架基础入门的主要内容,如果未能解决你的问题,请参考以下文章