单点登录理解

1、当访问client1的时候,spring security会设置一个cookie,该cookie将作为全部应用系统和认证系统保持会话的关键(未认证的应用必须携带该cookie才能实现单点登录的效果)。

2、 认证服务器会重定向到/login地址后,认证服务器确认上一步骤的的coolie(JSESSIONID)是否有效,有效则再次重定向到code模式,请求code的地址

3、浏览器被重定向访问code获取地址后,认证服务器设置一个新的cookie2,该cookie2用来保持client1和认证服务器的会话,之后认证服务器重定向到认证服务器的登录页面;实际这时候在认证服务器已经创建好了client1登录的token,但是该token是未认证的状态;

3、浏览器被重定向到登录页面的同时,需要携带上一步创建的cookie2(client1和认证服务器保持会话的jsession)进行认证,

 4、用户输入用户名密码进行登录,登录成功后被重定向到http://127.0.0.1:8080/client1/login?code=HijJSU&state=1qkhp3

 

5、被重定向到code换取token的地址,

6、重定向到最初访问的地址:

7、携带第1步中的cookie,访问client2的地址将之间被重定向到/server/oauth/authorize(获取code)的地址

注意:全部单点登录的核心就是这一步要带着cookie去访问

原文地址:https://www.cnblogs.com/fanrenren/p/11389072.html