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,所以就能拿到用户信息了

相关推荐
一隅论数智4 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi20164 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
爱吃苹果的日记本4 天前
离散数学第六课
学习·离散数学
AI职业加油站4 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊4 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
彧azz4 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
我爱cope4 天前
【操作系统 | 计算机硬件:CPU、内存与 I/O 如何支撑操作系统?】
学习·操作系统