SSO vs SAML, explicado para todos
SSO y SAML a menudo se usan vagamente y pueden interpretarse de diferentes maneras. En este artículo, aclararemos estos conceptos, explicaremos cómo se relacionan entre sí y proporcionaremos ejemplos reales para facilitar su comprensión.
SSO y SAML a menudo se usan vagamente y pueden interpretarse de diferentes maneras. En este artículo, aclararemos estos conceptos, explicaremos cómo se relacionan entre sí y proporcionaremos ejemplos reales para facilitar su comprensión.
¿Qué es SSO?
SSO (Single Sign-On) es un proceso de autenticación que permite a un usuario iniciar sesión una vez y acceder a múltiples aplicaciones o servicios sin necesidad de iniciar sesión nuevamente para cada uno. Sin embargo, esta definición general puede aplicarse a diferentes escenarios cuando se utiliza SSO.
Existen varios escenarios donde el SSO entra en juego.
Social SSO
A veces, las personas se refieren al inicio de sesión social como social SSO. Por ejemplo, los usuarios pueden usar el inicio de sesión de Google para crear una cuenta en una nueva aplicación, utilizando directamente la identidad y la información almacenada en Google. En este escenario, el usuario gestiona su propia identidad.
Social SSO facilita a los usuarios el control de su información, reduciendo los pasos tediosos en el proceso de creación de cuenta e inicio de sesión. Social SSO generalmente se basa en protocolos estándar abiertos como OAuth 2.0 y OIDC.
Enterprise SSO
Primero, desglosaremos los conceptos de Identity Provider y Service Provider en términos simples.
- Identity Provider (IdP) es como el “portero” de tu identidad. Es el sistema que contiene tu información de inicio de sesión y verifica quién eres. Piensa en ello como una autoridad de confianza que dice: “Sí, esta persona es quien dice ser”. Ejemplos incluyen Google Workspace, Microsoft Entra y Okta Workforce Identity.
- Service Provider (SP) es la “aplicación” o “servicio” al que deseas acceder una vez que se verifica tu identidad. Es el lugar al que intentas iniciar sesión, como una aplicación o sitio web. Por ejemplo, Zoom, Slack o las herramientas internas de tu empresa son todos proveedores de servicios.
En términos simples, el Proveedor de Identidad prueba quién eres, y el Proveedor de Servicios te da acceso a sus servicios una vez que tu identidad es confirmada.
Enterprise SSO se utiliza en escenarios más centrados en negocios y dividido por esos dos términos explicados anteriormente, hay dos casos típicos: SSO iniciado por IdP y SSO iniciado por SP. Aunque los términos puedan sonar técnicos, los escenarios son bastante directos.
IdP-initiated SSO
Piensa en cuando, como empleado, te incorporas a las aplicaciones y recursos de tu empresa. Normalmente, RRHH creará una cuenta para ti. Luego, usas esa cuenta para iniciar sesión en una plataforma como Okta o Google Workspace. Una vez que hayas iniciado sesión, serás dirigido a un portal corporativo, donde puedes acceder a todas las aplicaciones de la empresa, como sistemas de nómina, herramientas de colaboración, Workday y más.
SP-initiated SSO
Cambiemos de perspectiva y míralo desde otra perspectiva. A veces, necesitas comenzar en la página de inicio de sesión de un producto específico. Por ejemplo, si quieres usar Zoom para una reunión en línea con tus colegas, verás una opción para “Iniciar sesión con SSO”. Este escenario se conoce como SSO iniciado por SP.
Qué problemas está resolviendo Enterprise SSO
El primer beneficio del enterprise SSO es que permite a las empresas gestionar identidades de la fuerza laboral fácil, flexible y seguramente.
Supongamos que diriges una empresa y todos tus empleados necesitan acceso a los productos y servicios que has comprado. Dado que los recursos producidos por la empresa pertenecen a la empresa, se necesita un sistema de identidad de propiedad corporativa. Si los empleados utilizaran identidades personales para acceder a los recursos de la empresa, se crearían desafíos de seguridad y gestión.
Por otro lado, en un escenario como el SSO iniciado por SP, los empleados acceden a múltiples aplicaciones y servicios de propiedad de la empresa. Cuando los empleados se incorporan o se despiden, RRHH debe crear y eliminar numerosas cuentas en todos los productos y servicios de la empresa, lo cual es tedioso y consume tiempo.
Enterprise SSO simplifica este proceso a través de un sistema de identidad universal, y herramientas como SCIM (System for Cross-domain Identity Management) y Provisionamiento Just-in-Time lo hacen aún más eficiente.
Para SSO iniciado por IdP, es beneficioso para los desarrolladores de productos que desean estar “listos para la empresa”. Por ejemplo, si eres una startup que inicialmente se enfoca en consumidores individuales, y más tarde una gran empresa quiere usar tu producto, pueden requerir que los empleados inicien sesión usando Microsoft Entra, por ejemplo. En este caso, tendrías que integrar SSO empresarial en tu producto para cerrar el trato.
¿Qué es SAML?
SAML (Security Assertion Markup Language) es un protocolo estándar abierto utilizado para autenticación y autorización. Junto con OAuth y OIDC, SAML se usa ampliamente en sistemas de gestión de identidad, particularmente en la gestión de identidad de la fuerza laboral. Proveedores de identidad comerciales como Okta y Microsoft Entra comúnmente soportan SAML como uno de sus protocolos estándar.
Algunos sistemas más antiguos y proveedores de inicio de sesión social también ofrecen soporte SAML, por lo que tener SAML integrado en tu sistema puede ayudar a garantizar la compatibilidad con una gama más amplia de proveedores de identidad y el crecimiento futuro del ecosistema.
¿Cuándo se necesita SAML?
SAML se usa a menudo en escenarios de Enterprise SSO. Por ejemplo, considera esta situación:
Tu equipo de ventas se comunica con los desarrolladores de productos y dice: “Tenemos un gran cliente, y requieren inicio de sesión SAML. Necesitamos soportar esta tecnología”.
Para los ingenieros que no están familiarizados con SAML o IAM (Identity and Access Management), su primer paso probablemente será buscar “SAML” o “inicio de sesión SAML”.
En última instancia, el objetivo es integrar SSO empresarial en tu producto, haciéndolo “listo para la empresa” para satisfacer las necesidades de clientes más grandes que dependen de tecnologías como SAML para una autenticación segura.
¿Cómo funciona SAML?
Aquí tienes un desglose simplificado de los dos tipos:
Flujo iniciado por SP
- El usuario intenta acceder al recurso del SP.
- El SP redirige al usuario al IdP con una solicitud de autenticación SAML.
- El usuario inicia sesión en el IdP y es autenticado.
- El IdP genera una afirmación SAML con la identidad del usuario y posiblemente datos de autorización.
- El IdP envía la afirmación SAML de regreso al SP, generalmente a través del navegador del usuario.
- El SP procesa la afirmación, la valida y concede/deniega el acceso al usuario.
Flujo iniciado por IdP
- El usuario ya ha iniciado sesión en el IdP y selecciona un servicio/recurso desde el portal del IdP.
- El IdP genera una afirmación SAML basada en la sesión actual del usuario, que contiene identidad y atributos.
- El IdP envía la afirmación directamente al SP, sin que el SP lo haya solicitado previamente.
- El SP procesa la afirmación, valida su integridad y extrae la identidad y los atributos del usuario.
- El SP concede o deniega el acceso basado en la afirmación.
Para ver cómo funciona SAML desde una perspectiva técnica, consulta ¿Cómo funciona SAML?
La diferencia entre SAML y SSO
Las definiciones de SAML y SSO a menudo se mezclan, pero aquí tienes un desglose simple:
- SSO es un proceso de autenticación utilizado por aplicaciones y software, que permite a los usuarios iniciar sesión una vez y acceder a múltiples servicios.
- SAML es un protocolo técnico utilizado principalmente en la gestión de identidad empresarial para intercambiar datos de autenticación de forma segura.
Imagina esto: Entras a tu oficina por la mañana, y en lugar de tener que iniciar sesión en cada aplicación por separado—tu correo electrónico, calendario, herramientas de gestión de proyectos—simplemente inicias sesión una vez y tienes acceso a todo. Esta experiencia sin interrupciones es SSO (Single Sign-On). Es como tener una llave universal que abre todas las puertas a las herramientas de tu lugar de trabajo.
¿Pero cómo funciona el SSO?
Aquí es donde SAML (Security Assertion Markup Language) entra en juego. Piensa en SAML como un mensajero de confianza entre tu sistema de inicio de sesión (llamado Identity Provider, o IdP) y las aplicaciones que deseas usar (llamadas Service Providers, o SPs). Cuando inicias sesión a través de SSO, SAML envía de forma segura una “prueba” de tu identidad desde el IdP a la aplicación, confirmando que eres quien dices ser.
Entonces, en resumen:
- SSO es la experiencia del usuario: un inicio de sesión para acceder a múltiples aplicaciones.
- SAML es el protocolo detrás de escena que hace posible esa experiencia sin interrupciones al manejar de manera segura la verificación de identidad.
Mientras que SSO mejora la conveniencia, SAML asegura que todo permanezca seguro y conectado, permitiéndote acceder a todo sin una segunda preocupación.
¿Enterprise SSO usa otros protocolos?
Sí, además de SAML, OIDC es otro protocolo comúnmente utilizado en escenarios de Enterprise SSO. Por ejemplo, en el conector empresarial de Logto, se soporta tanto Microsoft Entra (OIDC) como Microsoft Entra (SAML).
¿Debería usar SAML SSO?
Si estás vendiendo a clientes empresariales, es importante considerar el soporte a SAML lo antes posible. Pero no solo te enfoques en soportar el protocolo SAML, piensa en todo el flujo de autenticación de SSO empresarial. Aquí hay algunos escenarios clave a considerar:
- Permitir que tus clientes se autoevalúen y configuren SSO empresarial.
- Asegúrate de que los empleados puedan unirse automáticamente a las organizaciones correctas en aplicaciones multi-tenant (esto se puede hacer con el aprovisionamiento Just-in-Time y SCIM).
- Implementar un flujo de inicio de sesión de extremo a extremo que sea compatible con tu proceso de inicio de sesión para consumidores.
Implementar SAML y Enterprise SSO con Logto
Logto proporciona flujos de SSO empresarial de extremo a extremo y soporta múltiples conectores SAML famosos. Puede integrarse en muchos escenarios comunes y necesitarás. Explora todas las funciones de Logto, desde Logto Cloud hasta Logto OSS, en el sitio web de Logto.