Protocolo de inicio de sesión único CAS, OAuth, OIDC, SAML
Antes de introducir el protocolo específico, es necesario explicar la diferencia entre “Autenticación” y “Autorización”.
En otras palabras, cuando un usuario inicia sesión en el sistema de la aplicación, el sistema debe autenticar primero la identidad del usuario y luego autorizar en función de la identidad del usuario. La autenticación y la autorización deben usarse juntas para permitir que los usuarios inicien sesión y utilicen el sistema de la aplicación.
El Servicio de autenticación central, denominado CAS, es un protocolo SSO de arquitectura B/S común. Como cualquier otro protocolo SSO, los usuarios solo necesitan iniciar sesión una vez y no necesitan iniciar sesión nuevamente para acceder a otras aplicaciones.
Como sugiere el nombre, CAS es un servicio que solo se usa para autenticación. Es diferente del protocolo OAuth/OIDC y no se puede usar como protocolo de autorización.
El protocolo CAS actual incluye las versiones CAS 1.0, CAS2.0 y CAS3.0. Los procesos de autenticación de estas tres versiones son básicamente similares.
El proceso de certificación CAS incluye varios participantes:
El proceso de certificación es aproximadamente el siguiente:
Nota: CAS 1.0 es un protocolo muy simple y tosco. 2.0, en la versión 3.0, los resultados de verificación del Ticket de servicio están todos en formato XML y se introduce un modo proxy (no se analiza en profundidad en este artículo).
Para obtener una definición estándar detallada del protocolo CAS, consulte:
/specs/openid-connect-core-1_0.html
Lo anterior brevemente presenta los principales. Existen varios protocolos SSO. En esencia, son todos mecanismos basados en la confianza central. Los proveedores de servicios y los proveedores de identidades intercambian información del usuario a través de la confianza mutua. diferentes, o los conceptos son algo diferentes.
Finalmente, se utiliza una tabla comparativa simple para resumir los contenidos clave de este artículo: