Single Sign On - Tensho97/Aprende-a-Aprender GitHub Wiki
¿Qué es un sistema Single Sign-On?
Inicio de Sesión Único/ Inicio Sesión Unificado
Es un procedimiento de autenticación que habilita a cierto usuario a acceder a varios sistemas con una sola instacia de identificación. La traducción literal sería "autentificación única".
Un sistema Single Sign-On (SSO) tiene una doble utilidad:
-
Para los usuarios supone la comodidad de identificarse una sola vez y mantener la sesión válida para el resto de aplicaciones que hacen uso del SSO. Además le permite identificarse usando los siguientes métodos de autenticación:
- Usando su UVUS y contraseña
- Usando su certificado de la Fábrica Nacional de Moneda y Timbre (FNMT)
- Usando su DNI-e (DNI electrónico)
-
Para los desarrolladores y administradores de aplicaciones es una manera de simplificar enormemente la lógica de sus aplicaciones, al poder delegar completamente la tarea de autenticar a los usuarios a un sistema independiente de las mismas.
Hay 5 tipos principales
- Enterprise SSo
Opera como una autenticación primaria. Intercepta los requisitos de login que se requieren por las aplicaciones secundarias con el fin de completar los campos de usuario y contraseña. Para la correcta operación de E-SSO es necesario que las aplicaciones subyacentes permitan deshabilitar la pantalla de login.
- Web Single del Login
Este tipo de solución opera solamente con aplicaciones y recursos que se acceden a través de la web. El objetivo es autenticar a un usuario en varias aplicaciones en internet sin la necesidad de que lo hagan más de una vez. Los datos de acceso son interceptados a través de un proxy, de un componente en el servidor o en la porción de software que se ejecuta en el cliente. Los usuarios que no se han autenticado aún son redireccionados a un servicio de autenticación del que deben volver con un token o acceso exitoso. Debido a los métodos que se utilizan, es posible que no sea la mejor solución en cuanto a seguridad.
- Identidad Federada
Es una de las formas más nuevas de realizar tareas de SSO. Corresponde a una solución de Identity Management – o gestión de identidad – la cual permite usar las credenciales disponibles en un sistema de autenticación en otros, ya sea de una misma organización o incluso de otras empresas. Lo anterior se realiza a través del uso de estándares que definen mecanismos para compartir información entre dominios. La gran ventaja en este caso es que no es necesario compartir o dar acceso a sistemas de directorios a otras organizaciones para su funcionamiento.
- Open ID
Las implementaciones de este tipo cuentan más como sistemas de autenticación distribuidos, ya que cada aplicación necesita autenticarse contra el servidor OpenID.
Es un método muy conocido y robusto para externalizar la autenticación. Los usuarios se registran en un servidor y obtienen un ticket (TGT, del término ticket-granting ticket), el cual es usado por las aplicaciones cliente para obtener acceso.
Autor: Julián