WEB 单点登录开发记录

129 阅读1分钟

单点登录,与移动端第三方登录差不多。比如,App 通过微信第三方帐号登录,跳到微信获取身份,跳回 App 进行登录,步骤思路相似。

sso

开发步骤

  1. 在 WEB 路由开始拦截,从document.cookie获取对应域名下的身份信息
  2. 若已有身份信息,则解析该身份信息,可以通过客户端或者服务端进行解析获取
  3. 若没有身份信息,则跳转到对应单点登录的网页页面,登录完成后跳回重新第一步

注意事项

  • 对应域名是指子系统 eg.abc.com 的域名和主系统 abc.com 的域名相同,这样才能获取对应 domain 的 cookie 信息。如果是本地进行测试的,可以安装应用iHosts进行配置,比如添加127.0.0.1 test.abc.com本地映射

  • 跳转到单点登录网页,需要携带回调地址,比如window.location.href = http://abc.com/login?redirect=${redirect},redirect 可以是原网页地址的 base64 编码数值