单点登录原理说明

一系统后台下有多个子web后台系统,如:A、B、C,通过登录同一登录SSO(全称Single Sign On)实现所有子系统的。重点是要根据浏览器cookie的特点。

流程说明:

  1. 当未登录A时,在浏览器中进入A系统界面 www.a.com A系统发现未登录,定向到SSO登录界面 www.sso.com/login?application=A ,输入账号、密码。SSO系统验证正确后设置一个cookie key为:login-cookie,浏览器在www.sso.com域名下就有了一个cookie。然后SSO 定向到 application 对应的token验证URL, www.a.com/check-token。 并带上token参数(此token需要存数据库,以便后来验证):如 www.a.com/check-token?token=b2ce49e4a541068d
  2. A系统在www.a.com/check-token 对应的代码逻辑中获取token参数b2ce49e4a541068d,并请求 www.sso.com/validate-token 将token参数带上,www.sso.com/validate-token 对应代码逻辑验证token 是否为自己之前发设置的token,若是则返回token 所对应的用户名、昵称等,A系统完成登录。
  3. 当浏览器第一次打开B系统界面www.b.com 时,B系统发现未登录,定向到SSO登录界面www.sso.com/login?application=B,SSO发现在www.sso.com域名下已经有了一个key为login-cookie的cookie,且该cookie有效,则定向到application B所对应的 www.b.com/check-token。 并带上token参数(此token需要存数据库,以便后来验证):如 www.b.com/check-token?token=b4ce49e4a5410123
  4. B系统在www.b.com/check-token 对应的代码逻辑中获取token参数b4ce49e4a5410123,并请求 www.sso.com/validate-token 将token参数带上,www.sso.com/validate-token 对应代码逻辑验证token 是否为自己之前发设置的token,若是则返回token 所对应的用户名、昵称等,B系统完成登录。

暂时记录这些,没有画图说明。以后需要时有个笔记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值