XXL-SSO介绍
XXL-SSO 是一个开源的分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。拥有"轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持"等特性,可以开箱即用。
特性
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客户端不需要过滤的路径;
下载
源码仓库地址
SpringBoot集成XXL-SSO
一、部署认证中心
1、下载源码,我们可以直接将XXL-SSO源码中xxl-sso-server拿来当作认证中心使用,如下图所示:
2、运行xxl-sso-server,在浏览器访问localhost:8080/xxl-sso-server,如下图所示:
二、创建配置应用端
1、新建一个可以web页面访问的Module,加入xxl-sso核心jar包,如下图所示:
2、修改配置文件application.properties,服务端口要与认证中心配置不同,配置认证中心地址,redis配置需要和认证中心相同。如下图所示:
3、源码使用的是freemarker来演示登录成功的界面,需要需要在classpath:/templates目录下放入一个页面模板。配置完成后如下图所示:
4、创建xxl-sso配置类,设置基于cookie验证方式,如下图所示:
5、创建一个控制器Controller,登录成功跳转到登录成功的页面,也就是模板对应的页面。
6、运行应用端web项目,在浏览器访问localhost:8081/xxl-sso-web-sample-springboot/,如下图所示:
从浏览器的地址栏可以看到,没有登录时,访问应用端web项目直接重定向到认证中心的登录页面了。
验证演示
1、认证中心登录,如下图所示:
2、再次访问应用端web项目localhost:8081/xxl-sso-web-sample-springboot/,如下图所示:
3、访问localhost:8081/xxl-sso-web-sample-springboot/json查看登录状态,如下图所示:
标签:入门,登录,sso,认证,SSO,所示,XXL,xxl From: https://blog.51cto.com/u_15988698/8121972