sso单点登录

SSO是一种让用户在登录一次后,无需再次登录即可访问多个子系统的身份验证机制。它通过共享cookie和token来实现。用户登录后,系统会在所有子系统共享的域中设置cookie,其他子系统通过验证该cookie中的token与SSO系统交互,确认用户身份。若token无效,则引导用户重新登录。
摘要由CSDN通过智能技术生成

SSO是什么?

sso:单点登录。单点登录就是一个子系统登录之后,其他系统就不用在登录了(一个域名下进行登录,其他的域名就都有了登录状态

SSO鉴权,就是当我们登录到A系统成功之后,A系统给B系统一个凭证,通过对这个凭证的验证,验证成功,就可以登录B系统。

流程

就比如我们在首页登录,点击登录,跳转到登录系统,完成登录后跳回首页页面,同时响应一个cookie去首页,这个cookie存储一个就是能认证用户是否登录的一个数据,这条cookie是能被其他页面互相访问的。

cookie要是能被其他子系统带到服务器,cookie的域要是所有子系统都相同的域,所以登录过后,向子系统写入cookie的时候,domain中是应该包含着他们的主域名,因为主域名都是相同的。

其他的子系统拿到了登录域的cookie后,但是他们的服务器后台是不承认的,所以需要统一先去访问登录系统的后台,登录系统的后台提供了一个判定的方法,登录系统的后台放行的话,就可以去访问自己的后台服务器。

其他子系统再去请求服务器的时候就会把刚才响应的cookie带着,这个cookie中保存用于认证用户是否登录的信息(token),还有自己的域名,然后服务器就能拿到这个cookie去判断他们是否登录了。

示例:

1、假如一个微服务有两个系统,一个是推送服务,一个是
当触发推送平台前端时,推送平台携带着token去请求推送平台的后端;
2、之后,推送平台的后端调用sso接口去看这个token是否有效,如果有效就放行,如果无效就给前端一个报错,前端根据报错跳转到sso的登录页面。
3、登录后sso的前端去跳转到推送平台,推送平台的前端在url上截取token,再执行第一步。

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值