El inicio de sesión único (SSO) es un servicio de autenticación en el que un usuario inicia sesión en un servicio o cuenta y, a continuación, obtiene acceso a varias aplicaciones. La tecnología elimina la necesidad de múltiples inicios de sesión al proporcionar autenticación automática después del inicio de sesión inicial.
Lo ideal es que los usuarios autenticados no tengan que iniciar sesión en aplicaciones o servicios individuales cada vez que necesiten acceder a ellos. Las áreas típicas en las que es aplicable un inicio de sesión único incluyen servicios en la nube, portales en línea, intranets y otros entornos en los que los usuarios necesitan acceder y navegar entre varias aplicaciones.
Otras áreas en las que es aplicable incluyen el comercio electrónico, la banca y otras aplicaciones y sitios web orientados al cliente. En este caso, el SSO permite a los usuarios acceder sin problemas a varias aplicaciones empresariales y de terceros sin tener que iniciar sesión en cada una de ellas individualmente.
Google, Microsoft y otras plataformas empresariales son algunas de las principales empresas que utilizan el SSO. Por ejemplo, una vez que inicie sesión en su cuenta de Gmail, podrá acceder a Google drive, Google docs, AdSense, YouTube, Google Analytics, Google Search Console y a todas las aplicaciones asociadas a la dirección de correo electrónico.
¿Por qué es importante el inicio de sesión único?
Las organizaciones utilizan múltiples aplicaciones y servicios para mejorar los flujos de trabajo y el rendimiento. El despliegue en la nube y/o en entornos locales a menudo da lugar a una fragmentación que puede suponer un reto para los equipos de TI y los usuarios.
Por ejemplo, la gestión de aplicaciones fragmentadas requiere más tiempo y conocimientos por parte del personal informático. Además, los usuarios deben depender de muchas aplicaciones y servicios para realizar su trabajo. Tradicionalmente, esto requiere iniciar sesión en varias aplicaciones y cambiar entre ellas varias veces al día.
El SSO elimina la necesidad de seguir introduciendo las credenciales de inicio de sesión cada vez que se necesita acceder a una aplicación o servicio diferente. Esto les permite proporcionar únicamente un conjunto de credenciales para acceder a los servicios y cambiar sin problemas entre aplicaciones sin tener que volver a iniciar sesión.
Además de mejorar la experiencia del usuario, aumenta la seguridad al tiempo que reduce los costes y la carga de trabajo del personal informático, que tradicionalmente dedicaría la mayor parte del tiempo a solucionar los problemas de inicio de sesión.
¿Cómo funciona el inicio de sesión único?
El proceso de SSO se basa en una relación de confianza entre el proveedor de identidades, como un servidor, y la aplicación a la que un usuario intenta acceder. Ambos intercambian un certificado que la aplicación o el servicio verifica que procede de una fuente de confianza.
Un flujo típico se parece al que se muestra a continuación, pero puede diferir en función del protocolo y de si la aplicación está basada en las instalaciones o en la nube.
- Un usuario intenta acceder al proveedor de servicios que remite al servicio, sitio web o aplicación.
- La aplicación envía un token al proveedor de identidades o al servicio SSO para autenticar al usuario.
- El sistema SSO comprueba si el usuario ya está autenticado. En caso afirmativo, se concede al usuario el acceso a la aplicación. Si no es así, se pide al usuario que proporcione las credenciales.
- Una vez verificada la autenticación, el proveedor de identidades envía un token al servicio o aplicación, y el usuario ya puede acceder a él.

Una vez que un usuario inicia sesión en una aplicación o sitio web que depende de un inicio de sesión único, el servicio SSO se conecta al servidor del proveedor de identidades principal. El sistema crea entonces un token de autenticación que actúa como una identidad temporal que muestra que el usuario ha sido verificado. Éste se almacena en el servidor de aplicaciones o en el navegador web del usuario.
Cada vez que el usuario accede a otra app, la nueva aplicación comprueba el servicio SSO para ver si hay un token de autenticación activo. Si el usuario ha iniciado sesión en otra app, el servicio SSO lo confirma y pasa el token a la aplicación. En consecuencia, el usuario inicia sesión automáticamente en otra app sin necesidad de proporcionar las credenciales.
Si el usuario no ha iniciado sesión, el servicio SSO le solicita el nombre de usuario y la contraseña.
Ventajas del inicio de sesión único
La autenticación de inicio de sesión único ofrece ventajas como la mejora de la seguridad y el cumplimiento de las aplicaciones, los usuarios y los datos. También ofrece una mejor experiencia y satisfacción del usuario, ya que se reducen las interrupciones y la necesidad de recordar credenciales diferentes para cada servicio o aplicación.
Otros beneficios son los siguientes:
#1. Reducción de la fatiga de contraseñas
Naturalmente, en el mundo digital actual, una persona debe recordar varias contraseñas para acceder a diferentes servicios y aplicaciones. Sin embargo, la mayoría de la gente teme tener que recordar contraseñas diferentes.

En su lugar, alguien utilizará una contraseña fácil de recordar para acceder a los distintos servicios, lo que supone un gran riesgo para la seguridad. Por ejemplo, un delincuente con la contraseña de una aplicación también puede acceder y poner en peligro todos los demás servicios que utilicen la misma.
Aunque el SSO utiliza un conjunto común de credenciales, se basa en una contraseña más segura y se utiliza sobre todo con la autenticación multifactor.
Lea también: Las contraseñas más comunes que debería dejar de utilizar
#2. Más fácil de integrar la autenticación multifactor
Dado que el SSO se ejecuta y gestiona desde un lugar central, permite integrar fácilmente la MFA. En este caso, los usuarios sólo tienen que activar la MFA una vez en lugar de varias veces en función del número de aplicaciones y servicios.
#3. Reducción del tiempo de recuperación de contraseñas
Reduce el tiempo que se tarda en recuperar o resolver contraseñas olvidadas. Lo más habitual es que los equipos de TI dediquen mucho tiempo a resolver los problemas de contraseñas del personal. Sin embargo, el SSO reduce el número de contraseñas necesarias y, por tanto, el tiempo que se tardaría en restablecerlas.
#4. Mejora de la productividad

Al eliminar la necesidad de iniciar sesión en cada aplicación o servicio, la autenticación SSO ahorra el tiempo que los empleados necesitarían para acceder a múltiples aplicaciones, lo que mejora la productividad.
Los usuarios sólo tienen que iniciar sesión una vez, después de lo cual pueden navegar sin problemas a través de múltiples aplicaciones sin que se les pida de nuevo el nombre de usuario y la contraseña.
#5. Mejora el cumplimiento de la normativa
Los sectores regulados, como el médico, el financiero y otros, tienen requisitos estrictos para cumplir normas como HIPAA, PCI DSS y otras. Mediante el uso de SSO, las empresas pueden cumplir fácilmente ya que sólo necesitan asegurar un conjunto de credenciales para todos los servicios y recursos.
Inconvenientes de la autenticación SSO
Aunque la autenticación Single Sign-On ofrece una mejor experiencia de usuario y otras ventajas, tiene algunos inconvenientes.
Entre ellos se incluyen:
#1. Riesgos de seguridad

El servicio SSO puede presentar mayores riesgos de seguridad. Los fallos en el sistema SSO y las prácticas inseguras de SSO pueden potencialmente exponer las credenciales que los atacantes pueden explotar y comprometer múltiples aplicaciones. Además, el SSO puede no abordar todos los requisitos de seguridad de algunas aplicaciones sensibles o críticas.
A pesar de los retos, las organizaciones están implantando el SSO debido a sus numerosas ventajas, especialmente cuando utilizan aplicaciones de bajo riesgo como los chats. Para mejorar la seguridad, pueden añadir otras tecnologías de autenticación, como la MFA.
#2. Despliegue complejo
Configurar los componentes del SSO, como el proveedor de identidades y los certificados digitales, y después integrarlos con las aplicaciones (proveedor de servicios) es un ejercicio complejo y difícil que requiere mucha experiencia y tiempo.
Una vez configurado, el servicio SSO debe estar disponible en todo momento. Por lo tanto, requiere una infraestructura de alta disponibilidad para garantizar la fiabilidad y el acceso a las aplicaciones de la organización. De lo contrario, los tiempos de inactividad provocan la imposibilidad de acceder a las aplicaciones y servicios.
Además, la pérdida de credenciales como la contraseña o la imposibilidad de iniciar sesión en la cuenta principal implica la imposibilidad de acceder a cualquier aplicación. Sin embargo, la mayoría de las soluciones de inicio de sesión único proporcionan un autoservicio de restablecimiento de contraseñas al que la mayoría de los usuarios pueden acceder y restablecer las contraseñas.
#3. No todas las aplicaciones admiten el inicio de sesión único
Aunque la mayoría de las empresas en la nube y locales soportan el SSO, algunas no. Como tal, incluso con el SSO en su lugar, los usuarios todavía pueden necesitar usar credenciales para servicios y aplicaciones no soportados.
Estándares y protocolos de autenticación SSO
Un proceso de autenticación SSO debe pasar de forma fiable y segura el token de autenticación a los demás servicios y aplicaciones a los que el usuario puede acceder. Para que esto ocurra, los tokens de autenticación tienen protocolos o estándares específicos para garantizar su legitimidad y exactitud.
Por ejemplo, para las aplicaciones en la nube, puede implementar métodos de autenticación SSO basados en la federación, como OAuth, OpenID Connect o SAML.
Existen varios métodos y protocolos de autenticación SSO, y la elección depende del entorno, el nivel de requisitos de seguridad, etc.
SSO federado
La gestión de identidades federadas (FIM) proporciona una relación de confianza entre aplicaciones y proveedores, terceros de confianza y proveedores de servicios externos.
Por ejemplo, después de iniciar sesión en Gmail o en una cuenta de Apple, un usuario puede tener acceso a otras aplicaciones como Twitter y otras sin que se le solicite un inicio de sesión adicional. Sin embargo, puede solicitar una verificación, como un número de teléfono, si accede a la aplicación externa por primera vez en el dispositivo.

Inicio de sesión único adaptable
La autenticación SSO adaptable solicitará inicialmente un nombre de usuario y una contraseña para acceder a la cuenta principal. Sin embargo, acceder a una app sensible o de alta seguridad puede requerir una autenticación adicional, como credenciales o un código MFA. Esto también puede ocurrir al acceder a una aplicación o servicio desde un nuevo dispositivo o ubicación.
Autenticación Social SSO
Permite a los usuarios iniciar sesión en servicios, aplicaciones y sitios web de terceros utilizando sus cuentas de redes sociales, como Twitter, Facebook, Apple, Google o LinkedIn.
Autenticación SSO con tarjeta inteligente
Para iniciar sesión con esta autenticación, un usuario debe tener una tarjeta inteligente física y utilizarla para iniciar sesión en el ordenador que tiene la cuenta principal. Después, el usuario puede acceder a otras muchas aplicaciones y servicios. Idealmente, ésta es una de las soluciones SSO más seguras. Ya que, a menos que los atacantes obtengan la tarjeta física y el PIN, no podrán iniciar sesión en las aplicaciones.
El inicio de sesión único con tarjeta inteligente no es muy popular pero es más seguro. Se utilizan en bancos y pagos en línea como opciones de autenticación multifactor.
Inicio de sesión único con autenticación Kerberos
El sistema de autenticación SSO solicita al usuario que facilite sus credenciales principales. A continuación, el proveedor de identidades, como Active Directory, emite un ticket-granting ticket (TGT). Después, el TGT proporciona tickets de servicio para los demás servicios, sitios web y aplicaciones a los que el usuario desea acceder.
En la autenticación Kerberos, los tickets TGT suelen ser temporales y sólo para una sesión específica. Tienen una vida corta para reducir los riesgos de que un atacante acceda a la sesión o la secuestre.
Protocolo SAML (Security Assertion Markup Language)
SAML es uno de los protocolos estándar abiertos que admiten el intercambio de datos de autenticación y autorización cifrados entre el proveedor de identidad principal y varias aplicaciones o servicios.
En comparación con otros protocolos, SAML proporciona mayores controles de seguridad y es ideal para aplicaciones críticas y protegidas en gobiernos y empresas.
SAML permite la autenticación y autorización de usuarios. Además del nombre de usuario y la contraseña, las organizaciones pueden añadir la opción de autenticación multifactor para mejorar la seguridad.
Protocolo OAuth de autorización abierta
OAuth también es un protocolo estándar abierto que permite a las aplicaciones intercambiar información de autorización de forma segura. Permite que diferentes aplicaciones se comuniquen sin exponer las contraseñas de los usuarios.
Utilizando la autenticación Auth0, las empresas pueden integrar aplicaciones al tiempo que integran opciones de SSO como SAML, LDAP, AD, etc.
Protocolo de inicio de sesión único OpenID Connect (OIDC)
OpenID Connect (OIDC) es un protocolo de autenticación de inicio de sesión único para aplicaciones orientadas al consumidor. El protocolo de autenticación de estándar abierto se ejecuta sobre OAuth.
Utiliza un proveedor de identidad con tokens web JSON para autenticar a los usuarios. Por ejemplo, puede utilizar el inicio de sesión social para permitir que los usuarios accedan a un carrito de la compra o a otra aplicación de terceros.
Palabras finales
La implantación de la autenticación de inicio de sesión único mejora la forma en que los usuarios navegan por diferentes aplicaciones o servicios. Una vez que inician sesión a través de SSO, tienen permiso para acceder a todos los servicios o aplicaciones aprobados sin tener que iniciar sesión en cada uno de ellos individualmente. En consecuencia, ofrece una mejor experiencia de usuario y productividad.
A continuación, puede consultar las plataformas de autenticación de usuarios [Auth0, alternativas a Firebase].