hbbbs

SSO的简单实现思路 (参考淘宝天猫的SSO实现)

三个系统实现跨域访问: A系统,B系统,SSO系统

 

登录:

访问A时,发现没登录,跳转到SSO登录后,跳转回来

 

访问B系统:

访问B时,ajax到B确实是否登录 ?

    >  用户在B系统登录了,那么照常操作即可

    >  用户没有在B系统登录,则302 或者另外发一个ajax 跨域到SSO拿登录信息 (类似于 https://login.taobao.com/jump?target=https%3A%2F%2Ftmcc.tmall.com...)

          >>  SSO如果没登录,则跳转去登录即可。

          >>  SSO如果登录了,则返回加密后的用户信息及登录凭证。此时302 或者 另外发一个ajax 将 加密后的用户信息及登录凭证 交给B系统,进行session和cookie的创建,进行B系统登录 。

               (类似于 https://pass.tmall.com/add?t=xxx&lgc=xxx&_tb_token_=xxx......)

 

其中有一个细节要注意: 

    如果B系统登录的请求还未完成,要阻塞前端其他系统自动发出的ajax。

分类:

技术点:

相关文章:

  • 2021-06-21
  • 2021-11-15
  • 2022-12-23
  • 2021-09-10
  • 2022-01-06
  • 2021-08-08
  • 2021-06-18
猜你喜欢
  • 2021-09-14
  • 2022-12-23
  • 2021-11-10
  • 2022-01-03
  • 2021-12-20
  • 2022-01-29
相关资源
相似解决方案