知识消化篇-单点登录原理SSO
前言
单点登录 Single Sign On 是指多个系统之间利用一个登录授权系统,其中一个系统实现了登录其他系统无需再次登录的方式
原理
我们知道单登录系统的原理是通过 session cookie 的方式实现的,cookie有个特性就是存在跨域问题,如果我们想实现多个系统共享登录会话的话,就需要把 cookie 种在他们共同的父域名下,前提这些系统的都在共同父域名下,而且早期的网站也是这么搞的,但是存在一个问题要求服务端的技术得统一,不然例如 cookie 的 sesssion-key都不一致,其次 cookie登录方式并不安全
单点登录
sso 作为一个独立的登录认证系统,其他各业务应用不设置登录服务,sso登录授权后会创建令牌给各个子系统,子系统拿着这个令牌在去sso校验有效性,然后返回子系统真正的服务内容
登录
其中一个子系统登录后,建立全局会话,其余的子系统都无需进行二次登录
注销
其中一个子系统注销后,全局会话被注销,通知其余的所有的子系统的局部会话失效