sa-token学习(2)

官方文档地址:sa-token

sa-token学习(1)

文章目录

单点登录

单点登录的3种模式

SSO模式一 共享Cookie同步会话

解决会话不能共享的方法

1、使用 共享Cookie 来解决 Token 共享问题。

2、使用 Redis 来解决 Session 共享问题。

java 复制代码
127.0.0.1 sso.stp.com
127.0.0.1 s1.stp.com
127.0.0.1 s2.stp.com
127.0.0.1 s3.stp.com

过程:

1、用户访问:http://s1.stp.com:9001/,但是由于未登录,所以页面不会显示用户信息,并且页面会显示1个用于登录的a标签,此a标签指向`http://sso.stp.com:9000/sso/auth?mode=simple&client=sso-client1&redirect=http%3A%2F%2Fs1.stp.com%3A9001%2F`,但点击此a标签时就会将地址栏跳转到`http://sso.stp.com:9000/sso/auth?mode=simple&client=sso-client1&redirect=http%3A%2F%2Fs1.stp.com%3A9001%2F`,由于未登录,所以此时会返回1个单点登录的页面

2、当在单点登录的页面输入sa/123456发起ajax登录请求,登录成功后,就会得到set-cookie的头,然后再刷新当前页面请求http://sso.stp.com:9000/sso/auth?mode=simple&client=sso-client1&redirect=http%3A%2F%2Fs1.stp.com%3A9001%2F,由于此时登录了(通过携带cookie),此时服务端返回302就让客户端重定向到redirect指向的地址http://s1.stp.com:9001/

3、客户端重定向到redirect指向的地址后,由于之前单点登录页面写的cookie与当前应用的页面在同1个主域名下,所以会携带此cookie,并且又由于后台共享redis,所以就能拿到用户信息了

4、其它应用点击登录http://sso.stp.com:9000/sso/auth?mode=simple&client=sso-client1&redirect=http%3A%2F%2Fs2.stp.com%3A9001%2F",就会携带单点登录成功所写入的cookie,因此也会走第2步中的服务端返回302让客户端重定向到redirect指向的地址http://s2.stp.com:9001/,然后同样走第3步,携带此cookie,又由于后台共享redis,所以就能拿到用户信息了

相关推荐
David猪大卫1 小时前
【C++修炼】string类:string类的模拟实现
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
lisw052 小时前
“科学前沿极限突破计划”述评!
大数据·人工智能·学习
外收内放2 小时前
数据分析(数据清洗)
python·学习·数据分析
一条泥憨鱼2 小时前
【计算机网络】| 详解链路层:MAC 地址与VLAN
网络·学习·计算机网络
燕落南枝3 小时前
C 语言学习大总结:从入门到进阶的完整知识体系
服务器·c语言·学习
科技林总3 小时前
从零开始学习DeerFlow完整路径
学习
David猪大卫3 小时前
【C++修炼】STL容器—模板进阶:非类型模板参数、模板特化、模板分离编译
c语言·开发语言·c++·经验分享·笔记·学习·面试
幼儿园蛋小黄3 小时前
嵌入式学习总结:从 I2C 到 SPI 的驱动开发实战
驱动开发·学习
老当益壮梁奶奶3 小时前
驱动学习(二):从零开始:驱动工程搭建与字符设备驱动框架详解(基于IMX6ULL)
c语言·arm开发·驱动开发·嵌入式硬件·学习