SSO(Single Sign-On)单点登录是怎么实现的?

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情

单点登录(SingleSignOn,SSO),就是通过用户的一次性鉴别登录。当用户在身份认证服务器上登录一次以后,即可获得访问单点登录系统中其他关联系统和应用软件的权限,同时这种实现是不需要管理员对用户的登录状态或其他信息进行修改的,这意味着在多个应用系统中,用户只需一次登录就可以访问所有相互信任的应用系统。这种方式减少了由登录产生的时间消耗,辅助了用户管理,是比较流行的。

也就是说,SSSO是一个认证规则,它允许用户使用同一个ID登录不同的系统。

在这里插入图片描述
我们通过上面的图来说一下SSO的流程:

Step1:
用户访问Gmail,Gmail发现用户还没登陆过,于是将用户重定向到SSO认证服务器,SSO认证服务器同样也会发现用户还没登陆。
用户被带到一个SSO登录页面,用户可以在这个页面上输入认证信息。
Step2-3:
SSO认证服务器校验用户输入的认证信息,然后会给用户创建Global Session,另外还会创建一个Token。
Step4-7:
Gmail会去SSO认证服务器上校验这个token,SSO认证服务器会登记Gmail,然后返回“valid”。接着Gmail会将受保护的资源返回给用户。
Step8:
用户此时从Gmail再去到另一个属于Google的网站,比如Youtube。
Step9-10:
Youtube发现用户并没有登录过,于是会向SSO认证服务器请求认证。SSO认证服务器发现用户已经登陆过,并且将Token也返回回去。
Step11-14:
Youtube同样会去SSO认证服务器上校验这个Token。SSO认证服务器会将Youtube的登记,并且返回“valid”给Youtube,Youtube接下来就会将受保护的资源返回给用户。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值