1. Varios conceptos
TGT (Ticket Grant Ticket): es un ticket de inicio de sesión emitido por el servidor cas para el usuario. Encapsula cookies e información del usuario. El usuario ha iniciado sesión. Pasa.
TGC (Cookie de concesión de tickets): Puede entenderse como una cookie de TGT y el valor de la cookie es el ID de TGT.
ST (Ticket de servicio): un ticket emitido por el servidor cas para acceder a un determinado servicio. El servidor utiliza TGT para emitir ST
2. Principios básicos
1. Primero: solicitar webClient1
1). La solicitud de webClient1 es interceptada por CASAuthencationFilter y la URL. de la solicitud se utiliza como parámetro de servicio. Redirigir a cas/login;
2), CAS detecta que no hay TGC en la solicitud y salta a su propia interfaz de inicio de sesión
<; p> 3), se pasa la verificación de inicio de sesión, CASServer genera TGT y ST, escribe la identificación de TGT en el navegador (TGC), usa ST como parámetro y redirige a webClient1.4) En este momento, el CASAthencationFilter de webClient1 pasará y es interceptado por TicketVaildationFilter. Este filtro envía una solicitud httpClient para verificar la exactitud de ST. La verificación del servidor pasa y la información del usuario se escribe en el. sesión de wenClient1.
La sesión SSO ya está establecida.
2. Luego, cuando acceda nuevamente a webClient1, obtendrá directamente la información del usuario de su propia sesión, sin verificación del lado del servidor.
3. Acceda a webClient2 cuando el navegador no esté cerrado
1) webClient2 detecta que no hay información del usuario en su propia sesión. La solicitud es interceptada por CASAuthencationFilter y utiliza la URL. de la solicitud como parámetro de servicio, redirigir a cas/login;
2). En este momento, CASServer encontrará el TGT según el TGC. el TGT para emitir el ST
El siguiente paso es Seguir los pasos del punto 1.4.