0
点赞
收藏
分享

微信扫一扫

XXL-SSO框架基础入门

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客户端不需要过滤的路径;

下载

源码仓库地址

  • https://github.com/xuxueli/xxl-sso
  • https://gitee.com/xuxueli0323/xxl-sso

SpringBoot集成XXL-SSO

一、部署认证中心

1、下载源码,我们可以直接将XXL-SSO源码中xxl-sso-server拿来当作认证中心使用,如下图所示:

XXL-SSO框架基础入门_web项目

2、运行xxl-sso-server,在浏览器访问localhost:8080/xxl-sso-server,如下图所示:

XXL-SSO框架基础入门_web项目_02

二、创建配置应用端

1、新建一个可以web页面访问的Module,加入xxl-sso核心jar包,如下图所示:

XXL-SSO框架基础入门_记住密码_03

2、修改配置文件application.properties,服务端口要与认证中心配置不同,配置认证中心地址,redis配置需要和认证中心相同。如下图所示:

XXL-SSO框架基础入门_记住密码_04

3、源码使用的是freemarker来演示登录成功的界面,需要需要在classpath:/templates目录下放入一个页面模板。配置完成后如下图所示:

XXL-SSO框架基础入门_记住密码_05

4、创建xxl-sso配置类,设置基于cookie验证方式,如下图所示:

XXL-SSO框架基础入门_Server_06

5、创建一个控制器Controller,登录成功跳转到登录成功的页面,也就是模板对应的页面。

XXL-SSO框架基础入门_Server_07

6、运行应用端web项目,在浏览器访问localhost:8081/xxl-sso-web-sample-springboot/,如下图所示:

XXL-SSO框架基础入门_记住密码_08

从浏览器的地址栏可以看到,没有登录时,访问应用端web项目直接重定向到认证中心的登录页面了。

验证演示

1、认证中心登录,如下图所示:

XXL-SSO框架基础入门_web项目_09

2、再次访问应用端web项目localhost:8081/xxl-sso-web-sample-springboot/,如下图所示:

XXL-SSO框架基础入门_Server_10

3、访问localhost:8081/xxl-sso-web-sample-springboot/json查看登录状态,如下图所示:

举报

相关推荐

0 条评论