You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何基于目录服务与Cookie的SSO仅支持单一互联网域?

问题1:重定向模式的早期SSO为何依赖Cookie?

早期重定向式SSO的核心逻辑是靠SSO服务器统一验证用户身份,而Cookie是SSO服务器维持用户登录状态的关键:

  • 用户首次访问未登录的业务系统(如app1.mycompany.com)时,系统会将用户重定向到SSO服务器。用户完成登录后,SSO服务器会在自身域下设置一个会话Cookie,这个Cookie存储了用户已登录的会话标识。
  • 后续用户访问同域下的其他业务系统(如www.mycompany.com)时,该系统会再次将用户重定向到SSO服务器。此时浏览器会自动携带之前SSO服务器设置的Cookie,SSO服务器通过这个Cookie识别出用户已处于登录状态,无需重复验证,直接重定向回业务系统并完成授权。
  • 若没有这个Cookie,SSO服务器无法识别用户身份,每次重定向都需要用户重新登录,单点登录的逻辑也就无法成立。

问题2:为何无法支持外部SaaS,但能在同一主域的子域间工作?

这完全由浏览器的Cookie同源策略决定:

  • 子域共享Cookie的原理:如果SSO服务器设置Cookie时,将Domain属性指定为.mycompany.com(注意前缀的点),这个Cookie会被所有属于mycompany.com的子域(如app1.mycompany.com、www.mycompany.com)共享。当这些子域重定向到SSO服务器时,浏览器会自动携带该Cookie,SSO服务器能正常识别用户,从而实现子域间的SSO。
  • 无法支持外部SaaS的原因:外部SaaS(如salesforce.com)与mycompany.com属于不同顶级域,浏览器的同源策略会阻止Cookie跨顶级域传递。当用户从外部SaaS重定向到mycompany.com的SSO服务器时,浏览器不会发送mycompany.com域下的Cookie,SSO服务器无法识别用户身份,自然无法完成授权;同时跨域场景下的凭证传递也会被同源策略限制,导致早期SSO无法跨顶级域工作。

内容的提问来源于stack exchange,提问作者Orca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 05:12:22