单点登录流程

单点登录系统又称SSO(Single Sign On);

定位是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

单点登录系统,主要关注以下几点:

  • 已登录用户识别

    权限认证系统提供跨域的JS脚本,用于判断用户是否已在平台内登陆;

    如已经登录,直接将cookie中的access_token返回给当前应用系统;

    应用系统通过用户的access_token,获取用户信息时,需要验证该access_token是否有效

  • 应用的身份识别

    平台中的每个应用设置各自标识(app_token),应用调用权限认证系统的用户信息接口时,需要对app_token,应用的服务器ip地址,进行验证(因为是内网平台,所以安全方面不需要过多考虑);

  • 用户注销

    将权限认证系统的cookie有效时间设置为90天,同时redis集群中维护一个access_token有效状态集合;

    当用户从应用登出后,原access_token从有效状态集合中清除;

    权限认证系统只对在有效状态集合中存在的access_token提供服务;

    保证用户首次登录成功后,即便重启浏览器也不需要在重新登录;

泳道图

[图片上传中...(image-685fa6-1510628115200-0)]

规则梳理清楚,实现起来就简单多了,你说是不是。

你可能感兴趣的:(单点登录流程)