¿Cuáles son las mejores prácticas de seguridad para los clientes que autentican a los usuarios con contraseña en LDAP?

1

Para proteger un entorno OpenLDAP, estoy investigando cuáles son las mejores prácticas de seguridad con respecto a la autenticación de usuarios con contraseñas (por ejemplo, sin autenticación Kerberos o certificado de cliente SSL).

Por lo que entiendo, hay dos enfoques para la autenticación de usuarios:

  1. Comparando la contraseña con el atributo userPassword.
    • El cliente se enlaza al servidor LDAP usando un usuario de enlace específico
    • El cliente envía una consulta LDAP para recuperar la entrada del usuario
    • El cliente extrae el esquema de hashing UserPassword
    • El cliente hace un hash de la contraseña proporcionada por el usuario con el esquema de hashing extraído y lo compara con la contraseña de hased en el atributo userPassword
    • Si ambos hashes coinciden, el usuario se autentica correctamente, de lo contrario, la autenticación falló
  2. Enlace LDAP con usuario y contraseña
    • El cliente se enlaza al servidor LDAP usando el usuario que desea iniciar sesión y la contraseña que proporcionó
    • Si el enlace LDAP fue exitoso, la autenticación fue exitosa, de lo contrario la autenticación falló

Parece que muchas implementaciones todavía están utilizando el primer enfoque, mientras que el segundo enfoque parece ser más seguro y también permite pasar a través autenticación .

  • Si los usuarios necesitan ser autenticados con una contraseña, ¿cuáles son las mejores prácticas de seguridad para autenticarse en LDAP y están documentadas en alguna parte?
  • ¿Hay otros enfoques que no sean los descritos anteriormente?
pregunta Florian Feldhaus 27.09.2017 - 09:31
fuente

1 respuesta

0

Para la mayoría de las implementaciones, comprobar la contraseña a través de LDAP es la mejor solución. Especialmente porque la mayoría de las implementaciones del servidor LDAP aplican restricciones de políticas de contraseña (caducidad de pw, etc.) solo cuando se procesan solicitudes de enlace.

Sin embargo, hay un caso de uso interesante para usar solicitudes de comparación:

En una configuración LDAP realmente paranoica, la aplicación se vincularía con una cuenta de servicio y luego se autorizaría explícitamente a través de las ACL detalladas para verificar la contraseña en nombre del usuario. Este límite de seguridad adicional casi no es posible con las solicitudes de enlace porque son siempre anónimas (además de mirar la dirección IP del igual o similar).

P.S .: Existen varios tipos de autenticación de paso. Si tiene un proxy de nivel de aplicación LDAP, por supuesto, puede enviar solicitudes de comparación a otros servidores LDAP.

    
respondido por el Michael Ströder 17.07.2018 - 12:31
fuente

Lea otras preguntas en las etiquetas