单点登录总结速通

单点登录的本质是:所有业务系统不保存登录状态,只负责跳转到同一个身份认证中心(IdP);浏览器只会在访问该认证中心域名时自动携带其下发的 HttpOnly Cookie,认证中心据此判断用户已登录并返回授权凭证,从而实现一次登录、多系统免登录。

分为a网站,b网站,登录a的时候就会跳转到idp,登录成功之后返回HTTP/1.1 302 Found
Set-Cookie: auth_session=abcd1234;
Domain=auth.com;
Path=/;
HttpOnly;
Secure;
SameSite=Lax;
Max-Age=3600
Location: https://a.com/callback?code=AUTH_CODE_ABC,,,这个会自动把cookie存在浏览器里面,不是前端缓存cookie,前端看不到也不会清楚,并且会写到一次性code换取token,如果跳转b系统,关键的来了,也会首先跳转到idp网站但是会自动携带cookie,idp一查你登陆过给个直接给个code换取token就能无感登录,还有个问题就是为什么会自动携带cookie,就是成功之后返回的cookie对应上的网站是吧只要去那个网站都会带上,这个就是浏览器自己干的,那要是其他不相关的网站也调到这个idf也会被带上吗?现实中的 SSO 一定有一个"客户端管理系统",
用来登记、维护、控制哪些系统可以接入单点登录。

如果没有这个"登记系统":

  • 任何网站都能拿到 code

  • code 可以换 token

  • = 登录态被劫持 暂时就这些后续有新理解会更新

相关推荐
郭老二5 小时前
【前端】vue3:编译步骤
前端
不在逃避q6 小时前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
夏殇之殁6 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
The Chosen One9856 小时前
高进度算法模板速记(待完善)
java·前端·算法
陈随易6 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员
新中地GIS开发老师7 小时前
WebGIS开发学生作品|低空航天管理与航线规划系统
前端·javascript·webgis·三维gis开发
用户059540174468 小时前
大模型对话记忆持久化踩坑实录:用 Playwright 自动化测了 300 次,终于揪出会话丢失的真凶
前端·css
丙氨酸長鏈8 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
kyriewen9 小时前
面试官让我手写虚拟列表——AI生成的版本,快速滚动几下就白屏了
前端·javascript·面试
IT_陈寒9 小时前
Vite热更新失效?你可能漏了这个配置
前端·人工智能·后端