单点登录流程
2022-08-04 17:01:55 15 举报
单点登录(Single Sign-On,简称SSO)是一种允许用户使用一组用户名和密码就能登录到多个应用程序的服务。它的流程如下: 1. 用户首次访问系统A时,进行身份验证并授权登录。 2. 系统A在用户浏览器上设置一个Cookie,包含已认证的令牌信息。 3. 当用户访问系统B时,系统B检测到该Cookie,并将请求重定向到系统A。 4. 系统A验证令牌信息,并向系统B返回授权信息。 5. 系统B根据授权信息,创建一个新的Cookie,并让用户登录。 这样,用户只需要一次身份验证就可以访问多个系统,大大提高了用户体验。
作者其他创作
大纲/内容
有
用from替换login中redirectUri生成新的跳转链接并跳转
没有code
有sso,有is_login
有sso,无is_login
getToken
没有token
跳转至客户链接登录后返回我们的from链接,并带上客户提供的code
无
tips: 每当跳转回用户点击from页面时,都会在链接拼接上is_login以避免页面循环跳转
res = await authorizeSSO()获取sso登录授权
有token
从token拿到uidres = await authorizeSSO(uid)获取sso登录授权
login判断路由是否带有code
从res获取idp_session_error
idp_session失效,关闭问卷,重新登录
无需登录,跳转至from页面
判断是否有is_auth
点击图标,记录当前页面from,判断当前页面路由是否含有is_login,,无则跳转至登录页login,有则正常进入页面
从res获取sso,login,is_auth,is_login
有code
收藏
0 条评论
下一页