单点登录、注销实现原理(SSO)


简介

单点登录是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的保护资源,若用户在某个应用系统中进行注销登录,所有的应用系统都不能再直接访问保护资源,像一些知名的大型网站,如:淘宝与天猫、新浪微博与新浪博客等都用到了这个技术。


提示:以下是本篇文章正文内容,下面案例可供参考

一、SSO登录原理:

有一个独立的认证中心,只有认证中心才能接受用户的用户名和密码等信息进行认证,其他系统不提供登录入口,只接受认证中心的间接授权。间接授权通过令牌实现,当用户提供的用户名和密码通过认证中心认证后,认证中心会创建授权令牌,在接下来的跳转过程中,授权令牌作为参数发送给各个子系统,子系统拿到令牌即得到了授权,然后创建局部会话。

设计案例

在这里插入图片描述
下面的解释对应上面的流程图
(访问系统1):

  1. 用户访问服务端系统1,系统1检测用户还没登录,跳转到sso认证中心。认证中心发现客户没有登录。跳到sso的登录页面
  2. 用户 在登录页面提交信息后,sso系统会校验用户信息。如果正确,创建全局会话。同时创建授权令牌。然后进行下一步,否则sso给出登录失败,返回步骤1
  3. sso系统带着令牌跳转访问最初系统1.系统1拿到令牌后,去sso系统认证令牌是否有效,若有效,则进行下一步
  4. 注册系统1,然后使用令牌创建用户系统1之间的局部会话。返回保护资源

(访问系统2):

  1. 用户 通过sso认证之后,访问系统2,系统2检测用户未登录,跳转sso认证系统。sso发现用户已经登录。带着授权令牌跳转系统2。
  2. 系统2拿着令牌去sso认证效验是否有效。sso认证返回有效,注册系统2.创建用户系统2之间的局部会话,返回保护资源

局部会话存在,全局会话一定要存在 。
全局会话存在,局部会话不一定存在。
全局会话销毁,局部会话必须销毁。

如果令牌跟sso认证令牌不一致,过期的话,用户需要重新登录

二、SSO注销原理:

1.设计案列

在这里插入图片描述
下面的解释对应上面流程图

  1. 用户向系统发出注销请求,系统根据用户与系统1建立的会话
  2. 从会话拿到令牌、向sso认证发起注销请求。认证中心校验令牌有效、销毁全局会话,同时取出令牌注册地址
  3. 认证中心向所有注册系统发出注销请求,各系统1,2收到注销请求后销毁局部会话。sso引导用户跳转登录页面

总结

单点登录涉及SSO认证中心与多个子系统,子系统与SSO认证中心需要通信(交换令牌、校验令牌及发起注销请求等),子系统中包含SSO的客户端,SSO认证中心是服务端

然后当天了解到的sso登录原理,晚上回家睡前记得要复现噢,不能偷看作弊,大致了解一个流程就行了。这是博主复现的知识点,有错误知识点请联系博主。博主继续努力,改正
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千筹问战

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值