介绍
单点登录存在的意义在于,比如公司里有多个系统,我只想登录一次,便可以访问公司的多个子系统
单点登录有很多模式,目前已知三种模式
1、cookie + session模式
2、token模式
3、token + refresh_token模式
Cookie + Session模式
优点:服务器有超强的控制能力,比如,删除认证中心的某一个用户的Session,这个用户就在任何子系统中失去登录状态了
缺点:耗钱,小企业用不起
Token模式
子系统可以自行验证TOKEN,原因是子系统和认证中心之间有沟通的密钥
PS:涉及到JWT的知识
优点:认证中心压力减少
缺点:很难进行集中控制,下线一个用户比较困难,每个子系统有自己的黑名单,而所有的子系统的黑名单又很难保持同步
Token + Refresh_Token
第一步
第二步
优点:想让某一个用户下线,就不给他refresh_token了
缺点:让这个用户下线可能不是那么的及时