SAML (Lenguaje de marcado para confirmaciones de seguridad)

¿Qué es el SAML (Lenguaje de marcado para confirmaciones de seguridad)?

El Lenguaje de marcado para confirmaciones de seguridad (SAML) es un estándar abierto que desempeña un papel crítico en la gestión de identidades y el control de acceso. El marco SAML garantiza la interoperabilidad y la funcionalidad coherente entre diferentes sistemas. El uso principal de SAML es permitir a las organizaciones implementar soluciones de inicio de sesión único (SSO).

Como un marco estándar abierto, SAML es un conjunto de directrices, protocolos y especificaciones que están disponibles públicamente y se desarrollan a través de un proceso colaborativo. Forma parte de muchas bibliotecas de desarrollo, lo que facilita a los desarrolladores la integración de SAML en sus aplicaciones. Por ejemplo, OpenSAML, Python-SAML y SimpleSAMLphp son bibliotecas de desarrollo que implementan la compatibilidad con SAML en Java, Python y PHP.

SAML y SSO

Aunque están estrechamente relacionados, SAML y SSO no son lo mismo. El inicio de sesión único es un proceso de autenticación que permite a un usuario iniciar sesión una vez y obtener acceso a múltiples aplicaciones o servicios sin necesidad de volver a iniciar sesión para cada uno. SAML es el marco subyacente que respalda el intercambio de datos de autenticación y autorización entre un proveedor de identidad (IdP) y un proveedor de servicios (SP).
Aspecto
SSO
SAML
En resumen, SSO es un concepto amplio que simplifica y asegura el acceso de los usuarios a múltiples aplicaciones, mientras que SAML es un marco estándar universal que los desarrolladores utilizan para garantizar la compatibilidad entre SSO y otras implementaciones de casos de uso.

Componentes clave de SAML

SAML incluye varios componentes que colaboran para respaldar diversos casos de uso.

Principal (usuario): el usuario que necesita acceder a un servicio o recurso. El usuario interactúa con el proveedor de servicios y el proveedor de identidad para autenticarse y obtener acceso al recurso deseado. Incluimos al usuario en esta lista de componentes porque ayuda a ilustrar cómo funcionan los demás componentes de SAML.

Proveedor de identidad (IdP): autentica al usuario y proporciona información de identidad al proveedor de servicios. El IdP gestiona la autenticación y la generación de aserciones.

Proveedor de servicios (SP): proporciona servicios o recursos al usuario. El SP confía en el proveedor de identidad para autenticar al usuario y es responsable de solicitar la autenticación y consumir las aserciones.

Afirmaciones SAML: documentos XML emitidos por el IdP que contienen afirmaciones sobre el usuario. Existen diferentes afirmaciones de SAML, incluidas las declaraciones de autenticación, las declaraciones de atributos y las declaraciones de decisión de autorización.

Protocolos SAML: protocolos que definen cómo se comunican las solicitudes y respuestas SAML entre entidades. Los principales protocolos SAML son el protocolo de solicitud de autenticación, el protocolo de resolución de artefactos y el protocolo de cierre de sesión único.

Enlaces SAML: define cómo se transportan los mensajes del protocolo SAML entre las entidades. Las vinculaciones comunes incluyen la Vinculación por Redirección HTTP y la Vinculación por Post HTTP.

Perfiles SAML: los perfiles definen los casos de uso de SAML y cómo las aserciones, los protocolos y las vinculaciones de SAML respaldan esos casos de uso. Los perfiles comunes incluyen SSO del navegador web, cierre de sesión único (SLO) y consulta de atributos. 

Metadatos de SAML: un documento XML que describe la configuración y las capacidades de IdP y SP de SAML. Incluye identificadores de entidad, puntos finales, certificados e información sobre los protocolos y enlaces compatibles.

Cómo SAML permite el inicio de sesión único

SAML permite el SSO al facilitar el intercambio de datos de autenticación y autorización entre un proveedor de identidad y un proveedor de servicios. A continuación se presenta una explicación paso a paso de cómo SAML habilita el SSO:

El usuario solicita acceso: el usuario intenta acceder a un servicio o recurso proporcionado por el proveedor de servicios.

El SP inicia la solicitud de autenticación: el SP identifica que el usuario necesita ser autenticado y responde generando una solicitud de autenticación SAML. Por lo general, se trata de una URL codificada con datos de solicitud SAML.

Usuario redirigido al IdP: el sistema redirige al usuario al IdP, enviando la solicitud SAML del paso anterior. Esto puede ocurrir mediante redirecciones HTTP, HTTP POST o artefactos.

El usuario se autentica con IdP: el IdP presenta una interfaz de autenticación para que el usuario introduzca sus credenciales. El IdP utiliza estas credenciales, normalmente un nombre de usuario y una contraseña, para verificar la identidad del usuario.

El IdP genera una respuesta SAML: tras una autenticación correcta, el IdP genera una respuesta SAML que contiene una aserción SAML. Para garantizar la integridad y la autenticidad, el IdP firma la aserción e incluye la identidad y el estado de autenticación del usuario.

El usuario es redirigido de nuevo al SP: el usuario es redirigido de nuevo al SP mediante HTTP POST u otros mecanismos. Esta redirección entrega la respuesta SAML al SP.

El SP valida la respuesta de SAML: el SP recibe y verifica la respuesta de SAML y extrae la información de identidad del usuario de la aserción de SAML.

El SP otorga acceso: basándose en la información de identidad del usuario y la aserción SAML, el SP otorga acceso al servicio o recurso solicitado. En este paso, el sistema autentica al usuario y concede acceso a los servicios autorizados.

Casos de uso comunes para SAML

El SAML se utiliza más a menudo para permitir el inicio de sesión único, pero hay varios otros casos de uso que admite el marco SAML:

Identidad federada: permite a las organizaciones compartir las identidades y credenciales de los usuarios entre diferentes dominios u organizaciones. Esto reduce la necesidad de múltiples credenciales.

Control de acceso: ofrece un mecanismo para aplicar políticas de control de acceso validando las identidades de los usuarios y sus roles antes de otorgar acceso a los recursos.

Aplicaciones en la nube y SaaS: facilita el acceso seguro a aplicaciones y servicios basados en la nube, reduciendo la necesidad de múltiples credenciales de inicio de sesión.

Autenticación móvil: extiende el SSO y la identidad federada a los dispositivos móviles, asegurando un acceso seguro a las aplicaciones desde teléfonos inteligentes y tabletas.

Integraciones B2B y B2C: facilita la gestión de identidades y el control de acceso para las interacciones entre empresas (B2B) y entre empresas y consumidores (B2C).

Autenticación segura de API: proporciona acceso seguro a las API validando las credenciales de los usuarios y asegurando que solo los usuarios autorizados puedan acceder a la API.              

Cumplimiento normativo y auditoría: ayuda a las organizaciones a cumplir con las normativas proporcionando un registro detallado y auditoría de los eventos de autenticación y acceso. 

Desarrollo y actualizaciones de SAML 2.0

La necesidad de un mecanismo como SAML se conceptualizó a finales de la década de 1990 a medida que el uso de internet se expandía y los propietarios de grandes redes querían autenticarse en diferentes dominios y organizaciones. Los gobiernos, las universidades y las redes empresariales se construyeron con múltiples dominios de seguridad o estaban conectados por ellos, y los usuarios de un dominio a menudo necesitaban acceder a recursos de otro. Existían varias soluciones propietarias creadas para resolver este problema, pero los expertos del sector reconocieron una creciente necesidad de un estándar universal que pudiera funcionar en todos los sistemas.

En 2001, la Organization for the Advancement of Structured Information Standards (OASIS) formó un Comité Técnico que crearía un marco XML para este estándar universal. Este marco definiría el intercambio de datos de autenticación y autorización entre dominios de seguridad. OASIS adoptó SAML 1.0 en noviembre de 2002, convirtiéndolo en el primer estándar para intercambiar datos de autenticación y autorización entre diferentes dominios de seguridad. Esta versión de SAML solo proporcionaba soporte básico para este intercambio. OASIS adoptó SAML 1.1 en septiembre de 2003, que incluía mejoras y avances en el manejo de errores, la implementación y el intercambio de datos entre dominios. Los cambios en SAML en la versión 1.1 se basaron principalmente en los comentarios del sector.

SAML 2.0 se convirtió en el estándar en 2005. Esta versión fue una mejora significativa respecto a las versiones anteriores, añadiendo o mejorando la compatibilidad con muchas de las características que se utilizan actualmente. Las adiciones principales incluyen:

SSO mejorado y cierre de sesión único (SLO): mecanismos mejorados para SSO y mayor flexibilidad en la gestión de la autenticación a través de múltiples dominios. La introducción de SLO permitió a los usuarios cerrar sesión en todos los sitios con una sola acción.

Identidad federada: un sistema de confianza que permite enlazar identidades a través de diferentes dominios de seguridad.

Compatibilidad con metadatos y gestión de atributos: introducción de metadatos para describir los atributos de los proveedores de identidad, proveedores de servicios y otras entidades SAML. La gestión de atributos facilita el intercambio detallado y flexible de esta información. 

Mejoras de seguridad: algoritmos criptográficos más potentes y otras mejoras para proteger los datos que se intercambian.

SAML 2.0 sigue siendo la versión actual y los desarrolladores la han actualizado continuamente desde su lanzamiento. Estas actualizaciones incluyen mejoras en seguridad e interoperabilidad, mejoras en el despliegue y soporte para nuevos casos de uso. OASIS revisa periódicamente el marco SAML 2.0 para asegurar que continúe siendo relevante, seguro y efectivo para la comunidad.

Ventajas empresariales de SAML

SAML respalda la mejora de la productividad y la eficiencia de varias maneras, principalmente a través de la seguridad, la experiencia del usuario y la eficiencia operativa. Aquí están algunos de los beneficios empresariales clave de implementar SAML:

Inicio de sesión único (SSO): el SSO es una de las principales ventajas de SAML, ya que permite a los usuarios iniciar sesión una vez y acceder a múltiples aplicaciones sin tener que introducir las credenciales repetidamente. Esto mejora la productividad y reduce los retrasos relacionados con el inicio de sesión.

Experiencia de usuario mejorada: se requieren menos inicios de sesión para cambiar entre aplicaciones y otros recursos. Este es un flujo de trabajo más fluido y eficiente que mejora la experiencia del usuario.

Seguridad mejorada: SAML mejora la seguridad mediante su soporte para comunicaciones cifradas y firmas digitales. Esto asegura que los datos de autenticación se transmitan de manera segura y sean fiables tanto para el proveedor de identidad como para el proveedor de servicios.

Autenticación centralizada: al centralizar la autenticación con un único proveedor de identidad, las organizaciones pueden aplicar políticas de seguridad consistentes y gestionar el acceso de los usuarios de manera más efectiva.

Reducción de la fatiga de contraseñas: SAML reduce el número de contraseñas que los usuarios deben recordar, lo que mejora las prácticas de contraseñas y reduce el riesgo de que se utilicen contraseñas débiles en varios servicios.

Gestión de usuarios optimizada: el aprovisionamiento y desaprovisionamiento de usuarios se vuelve más eficiente, ya que los cambios realizados en el sistema de identidad central se aplican a todas las aplicaciones conectadas. Esto es útil para la incorporación y desvinculación de empleados.

Ahorro de costes: un único conjunto de credenciales y un entorno de inicio de sesión único reduce el número de problemas de soporte para contraseñas e inicios de sesión. Menos asistencia técnica junto con un proceso de gestión de usuarios simplificado disminuye la carga administrativa de TI y reduce el coste del soporte de TI.

Cumplimiento normativo: SAML ayuda a las organizaciones a cumplir con los requisitos normativos al ofrecer capacidades potentes de registro y auditoría. Esto asegura que todos los eventos de autenticación sean registrados y puedan ser revisados para fines de cumplimiento normativo.

Escalabilidad: SAML gestiona despliegues a gran escala, lo que lo hace adecuado para organizaciones con numerosos usuarios y aplicaciones. Puede escalar fácilmente para satisfacer las crecientes necesidades empresariales.

Interoperabilidad: la amplia adopción y compatibilidad de SAML con diferentes plataformas y sistemas significa que las organizaciones pueden integrarse con una variedad de aplicaciones y servicios de terceros, mejorando la flexibilidad y la colaboración.

Reducción de la carga de TI: al delegar la autenticación a un proveedor de identidad central, los departamentos de TI pueden reducir el tiempo y el esfuerzo dedicados a gestionar los inicios de sesión de aplicaciones individuales, permitiéndoles centrarse en iniciativas más estratégicas.

Colaboración mejorada con socios: SAML facilita el acceso seguro para socios externos, permitiéndoles colaborar y compartir datos sin comprometer la seguridad de la organización. Esto puede llevar a relaciones empresariales más fuertes y una mayor eficiencia operativa.

SAML ofrece varios beneficios para las empresas. Mejora la seguridad, optimiza la experiencia del usuario, disminuye los gastos operativos y facilita el cumplimiento de los requisitos normativos.

SAML y ciberseguridad

Las empresas deberían incluir el marco SAML en un plan de ciberseguridad a nivel empresarial para ayudarles a mantener controles de seguridad sólidos y cumplir con los requisitos normativos.
Aspecto
Descripción

Obtenga más información sobre SAML

Términos relacionados

Lecturas complementarias

Cómo puede ayudar Barracuda

Barracuda CloudGen Access proporciona autorización, gestión de accesos y gestión de flujos de trabajo para entornos multinube o híbridos de TI. Con Barracuda CloudGen Access, puede hacer cumplir las políticas de seguridad de la empresa antes de que los usuarios accedan a la interfaz de inicio de sesión único para aplicaciones de Software como Servicio (SaaS). Está disponible como solución independiente o como parte de nuestra plataforma integral de ciberseguridad que protege los datos en todos los vectores de amenazas.

Barracuda ofrece soluciones integrales con la mejor relación calidad-precio y multitud de funciones que protegen contra una amplia gama de vectores de amenazas, respaldadas por un servicio de atención al cliente completo y galardonado. Al trabajar con un solo proveedor, se beneficia de una menor complejidad, una mayor eficacia y un menor coste total de propiedad. Cientos de miles de clientes en todo el mundo confían en Barracuda para proteger su correo electrónico, sus redes, sus aplicaciones y sus datos.