Protocolos de autenticación: LDAP vs Kerberos vs OAuth2 vs SAML vs RADIUS

Oct 25, 2021
admin

La autenticación de usuarios en aplicaciones es uno de los mayores retos actuales a los que se enfrenta el departamento de TI. Hay muchos sistemas diferentes a los que un usuario necesita acceder, y por eso la mayoría de los protocolos de autenticación suelen ser estándares abiertos.

Al leer preguntas sobre protocolos de autenticación en Stack Overflow, queda bastante claro que puede ser un tema confuso y abrumador.

En esta entrada del blog, presentamos los cinco protocolos de autenticación más utilizados y explicamos cómo funcionan y sus ventajas.

LDAP

LDAP (Lightweight Directory Access Protocol) es un protocolo de software que permite a cualquier persona localizar organizaciones, individuos y otros recursos como archivos y dispositivos en una red, ya sea en la Internet pública o en una intranet corporativa.

Es justo decir que LDAP se ha convertido en un programa popular. Sirvió como base sobre la que Microsoft construyó Active Directory, y ha sido fundamental en el desarrollo de los actuales directorios basados en la nube (también conocidos como Directories-as-a-Service).

LDAP envía mensajes entre los servidores y las aplicaciones cliente que pueden incluir todo, desde las solicitudes del cliente hasta el formato de los datos.

A nivel funcional, LDAP funciona vinculando un usuario LDAP a un servidor LDAP. El cliente envía una solicitud de operación que pide un conjunto particular de información, como las credenciales de inicio de sesión del usuario u otros datos de la organización. A continuación, el servidor LDAP procesa la consulta basándose en su lenguaje interno, se comunica con los servicios de directorio si es necesario y responde. Cuando el cliente recibe la respuesta, se desvincula del servidor y procesa los datos en consecuencia.

Obtenga nuestra Guía de generación de clientes potenciales para MSP

Aprenda más sobre cómo generar clientes potenciales con éxito y escalar

Ir a la Guía

Obtenga nuestra Guía de generación de clientes potenciales para MSP

Kerberos

Kerberos es un protocolo de autenticación de red. Está diseñado para proporcionar una autenticación fuerte para aplicaciones cliente/servidor mediante el uso de criptografía de clave secreta. El Instituto Tecnológico de Massachusetts dispone de una implementación gratuita de este protocolo. Kerberos está disponible en muchos productos comerciales también.

Aquí están los pasos más básicos que se toman para autenticar en un entorno Kerberizado.

  1. El cliente solicita un ticket de autenticación (TGT) del Centro de Distribución de Claves (KDC).
  2. El KDC verifica las credenciales y envía de vuelta un TGT encriptado y una clave de sesión.
  3. El cliente solicita acceder a una aplicación en un servidor. Se envía al KDC una solicitud de ticket para el servidor de aplicaciones que consiste en el TGT del cliente y un autentificador.
  4. El KDC devuelve un ticket y una clave de sesión al usuario.
  5. El ticket se envía al servidor de aplicaciones. Una vez recibidos el ticket y el autentificador, el servidor puede autentificar al cliente.
  6. El servidor responde al cliente con otro autentificador. Al recibir este autentificador, el cliente puede autentificar al servidor.

Oauth 2

Oauth 2 es un marco de autorización que permite a las aplicaciones obtener un acceso limitado a las cuentas de usuario en un servicio HTTP, como Facebook, GitHub y DigitalOcean.

Aquí se describen los pasos básicos del proceso de autorización:

  1. La aplicación solicita al usuario autorización para acceder a los recursos del servicio.
  2. Si ese usuario lo aprueba entonces la aplicación recibe una concesión de autorización.
  3. La aplicación solicita un token de acceso al servidor de autorización (API). Esto se hace presentando su identidad y la concesión de autorización.
  4. Si la identidad de la aplicación se autentifica y la concesión de autorización es válida, la API emite un token de acceso a la aplicación. La autorización está completa.
  5. La aplicación solicita el recurso a la API y presenta el token de acceso para su autenticación.
  6. Si el token de acceso es válido, la API sirve el recurso a la aplicación.
Oauth2
Fuente: Digital Ocean

SAML

Security Assertion Markup Language (SAML) es un formato de datos basado en XML y de estándar abierto para intercambiar datos de autenticación y autorización entre las partes, en particular, entre un proveedor de identidad y un proveedor de servicios. SAML es un producto del Comité Técnico de Servicios de Seguridad OASIS.

JumpCloud es uno de los mejores proveedores de Single Sign-On (SSO) que soporta los protocolos de autenticación SAML. El SSO de JumpCloud proporciona integraciones SAML con 700 aplicaciones empresariales populares (incluyendo Kisi) y características automatizadas de gestión del ciclo de vida del usuario como el aprovisionamiento justo a tiempo (JIT) y el aprovisionamiento/desaprovisionamiento SCIM.

A continuación se describen los pasos típicos del proceso de autenticación:

  1. El usuario accede a la aplicación remota mediante un enlace en una intranet o similar y la aplicación se carga.
  2. La aplicación identifica el origen del usuario (por subdominio de la aplicación, dirección IP del usuario o similar). Redirige al usuario de vuelta al proveedor de identidad, solicitando la autenticación.
  3. El usuario tiene una sesión de navegador activa con el proveedor de identidad o establece una iniciando la sesión en el proveedor de identidad.
  4. El proveedor de identidad construye la respuesta de autenticación en forma de un documento XML que contiene el nombre de usuario o la dirección de correo electrónico del usuario. Este documento se firma con un certificado X.509 y se envía al proveedor de servicios.
  5. El proveedor de servicios (que ya conoce al proveedor de identidad y tiene una huella digital del certificado) recupera la respuesta de autenticación y la valida utilizando la huella digital del certificado.
  6. Se establece la identidad del usuario y se le proporciona acceso a la aplicación.

RADIUS

El servicio de autenticación remota de usuarios por marcación (RADIUS) es un protocolo de red que proporciona una gestión centralizada de autenticación, autorización y contabilidad (AAA o Triple A) para los usuarios que se conectan y utilizan un servicio de red.

La autenticación RADIUS comienza cuando el usuario solicita acceso a un recurso de red a través del servidor de acceso remoto (RAS). El usuario introduce un nombre de usuario y una contraseña, que son encriptados por el servidor RADIUS antes de ser enviados a través del proceso de autenticación.

A continuación, el servidor RADIUS comprueba la exactitud de la información empleando esquemas de autenticación para verificar los datos. Esto se hace comparando la información proporcionada por el usuario con una base de datos almacenada localmente o remitiendo a fuentes externas como los servidores de Active Directory.

El servidor RADIUS responderá entonces aceptando, desafiando o rechazando al usuario. Los usuarios individuales pueden tener acceso restringido sin afectar a otros usuarios. En el caso de una impugnación, el servidor RADIUS solicita información adicional al usuario para verificar su ID de usuario, que puede ser un PIN o una contraseña secundaria. En el caso de un rechazo, al usuario se le niega incondicionalmente todo el acceso al protocolo RADIUS.

¿Cuál elegir?

LDAP, Kerberos, OAuth2, SAML y RADIUS son todos útiles para diferentes propósitos de autorización y autenticación y se utilizan a menudo con SSO.

El protocolo que elija debe reflejar las necesidades de su aplicación y la infraestructura existente. Ayuda a elegir una solución simple y estandarizada que evite el uso de soluciones de trabajo para la interoperabilidad con aplicaciones nativas. Por ello, SAML es una buena opción, ya que se integra con el SSO de JumpCloud y 700 aplicaciones empresariales populares.

Si buscas más contenido relacionado con el SSO, puedes consultar nuestra guía sobre cómo decidir qué tipo de inicio de sesión único puedes utilizar.

Enlaces relevantes

  • Evaluación de la seguridad física | Mejores prácticas &Proceso de auditoría
  • Qué es IoT – Definiciones de los expertos del sector
  • Herramientas de gestión de acceso a la identidad (IAM)

Deja una respuesta

Tu dirección de correo electrónico no será publicada.