单点登录原理

217 阅读1分钟

1.初级版单点登录

父级域名相同的情况下,app.demo.comnews.demo.com这种,一级、二级域名相同,三级不同,这样的可以将cookie设置在父级域名上(demo.com),然后这些地址在访问的时候都会带上该cookie。

2.高级版单点登录

利用CAS服务器,进行中央验证。

image.png

首次访问A网址时:

1.访问A网址,服务器发现没cookie,重定向到cas服务器地址去。

2.CAS发现也没有CAS的cookie,重定向让你去CAS的登录页。

3.提交完登录信息后,CAS验证信息,设置CAS的cookie,并重定向到A网址去,同时A网址带上ticket参数,这个ticket参数是根据用户信息生成的。

4.再次访问A网址,还带有ticket参数,A网址服务器,拿着ticket去CAS服务器验证ticket真实性,同时获取用户信息。

5.A服务器再次重定向A网址,这次不带ticket参数了,并设置了A网址下的cookie。

6.客户端这次带上了A的cookie访问A,没毛病了。

首次访问B网站时:

1.访问B网址,服务器发现没cookie,重定向到cas服务器地址去。

2.CAS发现有CAS的cookie,然后给它重定向到B网址,但是带了参数ticket。

3.B拿到ticket后,去CAS验证身份,同时获取用户信息。

4.设置B的cookie,同时重定向到B,这次不带参数。

5.客户端这次带上了B的cookie访问B,没毛病。

所以最后,A、b、CAS都有了自己的cookie。