单点登录流程
2021-09-08 03:52:09 70 举报
登录查看完整内容
SSO 单点登录
作者其他创作
大纲/内容
验证登陆成功,返回 client2 的受保护资源
client1.com
再访问 client2.com 受保护的资源
用户输入用户名密码
http://client2.com:8083/boss
未登录,命令浏览器重定向到SSO认证服务器
1、给 SSO 登录服务器留下登录痕迹
访问 client1.com 受保护的资源
http://ssoserver.com:8081/login.html?redirect_url=http://client1.com:8082/employees
http://client1.com:8082/employees
请求 SSO 登录页,并携带上访问的资源地址作为参数,便于登陆后SSO认证服务器做跳转
http://ssoserver.com:8081/login.html
提交登录请求
http://ssoserver.com:8081/login.html?redirect_url=http://client1.com:8083/boss
2、SSO 登录服务器需要将 token 信息进行重定向时,带到 url 地址上
4、自己的系统将用户保存在自己的 session 会话中
以后无论访问那个系统,浏览器session都保存了自己的token对应的用户信息,不用再去 SSO 服务器登录
返回登录页,并将上一步携带的重定向地址参数保存到如隐藏输入框中,便于登陆成功后跳转
处理登录请求,登陆成功保存用户登录状态到session,同时生成一个令牌并返回到客户端
http://client2.com:8083/boss?token=47eb58599c8d488fb0387dcb5ccee3e9
命令浏览器去 SSO 系统登陆,访问 sso 的 login 页面,这一次请求会携带上之前存的 sso_token 的cookie
http://ssoserver.com:8081/doLogin
浏览器重定向
登陆成功,返回重定向地址,并携带生成得 token 令牌,并给浏览器写入一个 cookie
登陆成功,返回受保护资源
访问 login.html,判断带来了 cookie ,说明已经登陆过,直接返回重定向地址,重定向到client2.com 的受保护资源
3、其他系统需要处理 url 地址上的关键token,只要 token 存在,将 token 对应的用户保存到自己的 session 中
登录判断:1、是否携带了参数 token,如果携带了就会将当前用户添加到session中span style=\"font-size: inherit;\
浏览器
浏览器在 SSO 系统的域名下保存返回的 cookie,浏览器以后访问 SSO 都要携带此域名下的所有 cookie
此时已有token,创建自己的session保存当前登录状态
client2.com
返回重定向地址
判断是否登录,此时访问请求已经携带了 token,查询到token对应的用户信息,并保存到当前系统的session中
http://client1.com:8082/employees?token=47eb58599c8d488fb0387dcb5ccee3e9
addCookie 给当前SSO系统留一个 cookie,表示用户已经登录
返回 client1.com 的受保护资源
SSO认证服务器
0 条评论
回复 删除
下一页