单点登录(SSO——Single Sign On)
对于一个大型系统来说,其下会包含很多子系统,这个时候我们可以使用单点登录来解决客户的重复登录问题,客户只需要登录其中任何一个子系统,则其余的子系统也可以直接登录。
流程
- 客户登录第一个子系统,子系统服务将登录用户的信息保存起来,生成对应的标识,可以为UUID,然后将UUID通过cookie响应到浏览器
- 浏览器发送请求登录其他系统时,将UUID放入cookie向服务器进行请求
- 服务器识别对应的唯一标识,判断用户是否可以登录
三方登陆
利用用户在第三方平台上已有的账号来快速完成自己应用的登录或者注册的功能。
流程
- 用户点击三方登陆,发送第三方登录请求
- 服务器重定向到第三方的登录页面,需要携带两个主要的入参:clientId,callback(回调地址)
- 第三方校验账号密码,返回code
- 三方请求发起方在内部通过code获取对应的token信息(防止用户信息被截取)
- 通过token获取用户相关信息