使用百度脑图时对其sso系统的思考

  • 背景
    在使用百度脑图时,我使用了百度账号进行登录,登录成功后发现没有数据,发现账号错了,然后进入百度中心退出账号重新登录,然后刷新百度脑图的页面,发现账号依然是之前的账号。这是什么原因?
  • 登录流程
    这里的登录方式就是sso(单点登录),简单描述下系统间的交互过程。
    image.png

    该过程是没问题的,但是百度中心退出账号后,百度脑图还在线,并且百度中心登录另一个账号后,同样百度的系统下存在2个账号,用户体验不是很好。
  • 思考优化点
    可以发现,整个问题在于百度中心退出后,子系统百度脑图却没退出,所以这里需要增加处理,在百度中心退出时,退出已经登录的子系统。
    这里就需要进行子系统登录记录,以便推出时回查。 这个地方可以建立一个表记录登录关系:
user_id login_status sub_system logout_url
1 1 naotu naotu/logout
  • 退出流程
    在百度中心退出时,检查已经登录的子系统,进行/logout_url调用,通知子系统进行退出处理(session失效)。这些动作可以通过异步完成。

    image.png

  • 总结
    sso系统的内容其实还有多种多样的实现,平时使用百度脑图比较多, 突然发现了这个很明显的问题,简单记录下。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容