Protocolos de autenticación: LDAP vs Kerberos vs OAuth2 vs SAML vs RADIUS
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.
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.
El cliente solicita un ticket de autenticación (TGT) del Centro de Distribución de Claves (KDC).
El KDC verifica las credenciales y envía de vuelta un TGT encriptado y una clave de sesión.
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.
El KDC devuelve un ticket y una clave de sesión al usuario.
El ticket se envía al servidor de aplicaciones. Una vez recibidos el ticket y el autentificador, el servidor puede autentificar al cliente.
El servidor responde al cliente con otro autentificador. Al recibir este autentificador, el cliente puede autentificar al servidor.