sso
2023-02-02 12:03:02   22  举报             
     
         
 Web端sso实现流程
    作者其他创作
 大纲/内容
 SSO逻辑流程图
  登入流程
  跳转URL
    收到请求
  客户浏览器
  跳转到原始请求URL,
  接收到客户端请求
  退出当前站点
  让客户浏览器跳转到原始网站的鉴权URL(如:www.a.com/login/{授权标识}}www.a.com/login/udfjgee)
  退出认证中心
  判断登入状态cookie是否有效
  跳转指定URL
  验证并返回相关信息
  每隔5分钟到认证中心刷新一下超时时间
  收到跳转请求
  跳转回原站点指定URL(如:www.a.com/index.html)
  否
  当前站点退出成功
  有效
  打开URL
  执行相关退出操作
  无
  显示登入界面,进行认证
  认证中心(www.sso.com)
  让客户端跳转到认证中心指定地址,进行认证。一般是登入页面兼容这个功能(如:www.sso.com/login/{站点标识}}www.sso.com/login/a)
  站点A(www.a.com)
  收到鉴权请求
  判断授权标识是否有效
  依次访问和系统关联的站点,对站点进行退出操作。
  是否必须登入
      这块需要特别强调,认证状态必须设定超时时长。否则一个月后,再次打开电脑,还是登入状态会有安全问题。    如果用户没有,操作退出功能,但是长时间没有访问,我们认为人员可能关闭浏览器并离开了。这个时候会执行“退出流程”。但是用户一般情况下是在某个站点操作,而不是一直刷认证中心的域名。所以这个时候需要,授权站点,定时更新登入状态。但是不要特别频繁,否则会给认证中心造成压力,建议几分钟刷一次,即可。    其次,大部分站点也会设置自己的登入超时时长,那么这块有2个问题,1.就是如果在用户站点登入超时了,不要执行退出请求,因为用户可能在操作其他页面。2.这个时长不应该比认证中心的超时时间更长,否则会被退出。
  收到退出请求
  用户操作退出流程
  退出用户登入状态
  跳转到认证中心退出URL(www.sso.com/span style=\
  打开默认页面
  放行,正常后续操作
  SSO要保证多个跨域站点,登入同步,退出同步
  请求站点中的URL
  退出流程
  跳转到指定页面(如:www.a.com)
  进行本地站点登入操作。如写入cookie和session等操作。
  1.要防止撞库.2.标识鉴定是为了防止,标识伪造
  用户登入状态超时
  刷新授权超时时间
  异步
  继续访问最初请求的网址
  请求认证中心,鉴定授权标识的授权信息。(如,授权是否有效,授权账号,授权时间,有效期,等)
  收到用户请求
  跳转到默认未登入页面页面
  考虑到服务器兼容,标识不要区分大小写
  cookie无效包括:无cookie,cookie超时,cookie有效但是状态为已退出
   
 
 
 
 
  0 条评论
 下一页