单点登录sso
单点登录常用有3种方式:
1. 主域名共享cookie
适用于同域名系统的单点登录。所有的子系统域名共享一个主域名的cookie,这样就可以实现登录一个系统,所有系统登录。
例如,a1.test.com, a2.test.com, 登录其中一个系统,设置.test.com的cookie,就可以实现其他系统也登录。
缺点:
1. 主域名要一致
2. 如果cookie承载session,则要求所有子系统web容器一致,比如都要使用nginx,不能一个nginx,一个tomcat。
2. sso站点认证授权
所有站点的认证,统一到一个sso站点进行,认证成功后,带着token返回来源站点。来源站点,使用token,去sso站点验证,验证成功,则授权登录。
例如:
认证站点: sso.com
系统站点: a.com
系统站点: b.com
用户访问a.com,若未登录,则跳转到sso.com,并带上a.com这个来源地址,则给出登录界面,登录成功后,生成一个授权token,保存在sso.com的cookie中,
通过a.com?token=token返回a.com, a.com拿到token,请求sso.com验证是否有效,有效则授权登录。
用户访问b.com,同样过程,若a.com已登录,即有未过期的token,则直接b.com?token=token返回,b.com同样验证token有效,则授权登录。
这样就达到登录一个,其他的也登录的效果。
3. sso登录写第三方cookie
在一个站点登录成功后,向一个sso地址或目标站点本身发送jsonp请求,验证成功后,重定向到目标站点,携带参数登录成功后,设置目标站点的cookie。
重复此过程,是的所有需要登录的站点的cookie都设置完成,多个系统的单点登录就完成了。
登出过程,一个系统登出成功后,以jsonp请求所有需要登出的系统的登出接口,清理cookie即可。
详细过程可以参考, 阿里(淘宝、天猫、一淘)、京东SSO分析
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2017-05-18 单链表的尾插,头插,遍历,查找和插入
2016-05-18 git config文件总结及git alias配置