SAML

From Identity wiki
Revision as of 16:05, 27 February 2025 by Identity (talk | contribs) (Created page with "SAML se compara frecuentemente con otras tecnologías de autenticación, como OAuth 2.0 y OpenID Connect:")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:

Introduction

Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between parties, particularly between an identity provider (IdP) and a service provider (SP). SAML enables Single Sign-On (SSO), allowing users to authenticate once and gain access to multiple applications without needing to log in separately.

How SAML Works

SAML operates based on XML-based security tokens and follows a set of protocols for secure user authentication and authorization. The process typically involves three key entities:

  • User (Principal): The individual requesting access to a service.
  • Identity Provider (IdP): The entity that authenticates the user and provides identity information to the service provider.
  • Service Provider (SP): The application or system that the user wants to access.

SAML Authentication Flow

  1. The user tries to access a resource on the service provider.
  2. The service provider redirects the user to the identity provider for authentication.
  3. The user logs in to the identity provider.
  4. The identity provider generates a SAML assertion (an XML document containing authentication and authorization data) and sends it to the service provider.
  5. The service provider validates the SAML assertion and grants the user access.

Key Components of SAML

SAML consists of several components that define how authentication and authorization data are exchanged:

  • SAML Assertions: These are XML-based statements that convey authentication, authorization, and attribute information.
   * Authentication Assertion: Confirms that a user has been authenticated.
   * Authorization Assertion: Specifies user permissions.
   * Attribute Assertion: Provides additional user details (e.g., email, role).
  • SAML Protocols: Define how requests and responses are exchanged between the IdP and SP.
  • SAML Bindings: Determine how SAML messages are transported over protocols like HTTP or SOAP.
  • SAML Metadata: Contains configuration details of IdPs and SPs to facilitate interoperability.

Benefits of SAML

Improved User Experience: Enables SSO, reducing the need for multiple logins.

Enhanced Security: Eliminates password fatigue and reduces the risk of phishing attacks.

Compatibilidad: Funciona en diversas plataformas y aplicaciones.

Escalabilidad: Soporta grandes empresas mediante la gestión federada de identidades.

SAML vs. Otros protocolos de autenticación

SAML se compara frecuentemente con otras tecnologías de autenticación, como OAuth 2.0 y OpenID Connect:

SAML vs. OAuth 2.0: SAML se usa principalmente para autenticación y SSO, mientras que OAuth se aplica a la autorización delegada (por ejemplo, permitir a terceros acceder a los datos del usuario).

SAML vs. OpenID Connect: OpenID Connect es una capa moderna de autenticación basada en OAuth 2.0, que usa JSON en lugar de XML, lo que lo hace más liviano y adecuado para aplicaciones web y móviles.

Casos de uso

Inicio de sesión único empresarial (SSO): Las organizaciones utilizan SAML para proporcionar acceso a aplicaciones internas y en la nube.

Integración de servicios en la nube: Proveedores de nube como Google, Microsoft y AWS admiten autenticación basada en SAML.

Instituciones gubernamentales y sanitarias: Se usa para garantizar el control seguro del acceso y la protección de datos confidenciales.

Conclusión

SAML es un estándar de autenticación potente y ampliamente utilizado que mejora la seguridad y la experiencia del usuario. Al proporcionar SSO y gestión federada de identidades, SAML simplifica los procesos de autenticación y mantiene altos estándares de seguridad. A medida que las organizaciones migran a tecnologías en la nube, SAML sigue siendo un componente esencial en las estrategias modernas de gestión de identidad y acceso (IAM).