单点登陆的大概意思就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。
本章具体实现原理(如下图):
(1)http://a.com/test.html下面代码如下:
(2)http://a.com/test.php代码如下:
(3)http://b.com/test.php代码如下:
(4)运行http://a.com/test.html,我们发现页面弹出登录成功,并且b.com成功写下了cookie和session
(5)总结:
在a.com跨域请求b.com的时候,我们通过加密令牌的方式去传递用户身份和登录有效时间的信息并通知b.com和其他系统在各自的系统下设置session和通知浏览器设置cookie。
以上就是同步登陆的实现,同理,同步退出的时候,只要跨域请求的时候去分别清除自己域下的cookie和session即可。