SSO单点登录-1-同浏览器进行单点登录

前端同域

  1. 客户端前端同域,则cookie可以存在相同的域名或顶级域名下,一个客户端登录成功后,将token信息保存到域名下的cookie中
  2. 其他不同客户端访问时,因为域名或者顶级域名相同,也能取到域名下的cookie中的token信息并传到后端

前端不同域

在这里插入图片描述

  1. 由于前端客户端不同域,那么不同客户端登录后,保存cookie中的token信息其他客户端并不能取到。因此需要一个能够传递token媒介。

  2. 认证信息的service端只有一个域名,因此把认证信息的service端域名下的cookie作为传输的媒介。

  3. 当客户端1登录时,客户端1未登录,则重定向到service端进行登录(携带着客户端自己的地址,等认证通过后跳转回来),sevice端弹出登录界面,输入账号、密码登录完成后,将token信息保存到service域名的cookie下。

  4. service已登录,创建ticket(创建一个key与账号的缓存)信息并携带ticket信息重定向到到客户端1,客户端1根据ticket中的账号信息进行登录,并重定像到最初的地址(保存token信息到客户端1域名下的cookie)。

  5. 客户端2进行登录,客户端2未登录,则重定向到service端进行登录,此时重定像到service端的时候,能够携带sevice端域名下的cookie中的token信息进行验证,验证已登录,则创建ticket(信息并携带ticket信息重定向到到客户端2。

     ***可能大家会想,用户A认证通过SSO后,通过回调地址将Token返回给原业务系统,原业务系统直接设置登
     录状态,这样流程简单,也完成了登录,那为什么还要还要拿Token再次访问SSO进行验证呢?其实这样问题
     时很严重的,如果用户在SSO没有登录,而是直接在浏览器中敲入回调的地址,并带上伪造的用户信息,是不
     是业务系统也认为登录了呢?这是很可怕的。***
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值