La contraseña no se puede crear a menos que se cumplan todas las restricciones.
Se recomiendan las restricciones que mencionaste. Sólo para recapitular.
- Longitud mínima de la contraseña
- caracteres permitidos
- Ambos números y letras
- Caso mínimo de mezcla de caracteres alfa
¿Deberíamos estar interceptando la contraseña que el usuario ha proporcionado y compararla con nuestras restricciones originales que el usuario debía seguir al crear la contraseña antes de enviarla a LDAP para la autenticación [?]
¿Qué camino es mejor? ¿Por qué?
En la primera pregunta que implicó (pero no declaró explícitamente) que retendría las restricciones de creación de la entrada LDAP original (arriba) y luego preguntó: "¿De qué manera?" Creo que la segunda pregunta puede haber confundido a las personas que intentan responder bien. Asumiré que su departamento NO está pensando en REEMPLAZAR el cheque original sino en duplicarlo antes en el flujo de datos entre el teclado y la búsqueda LDAP.
No hay razón para verificar lo que el usuario proporciona como contraseña para iniciar sesión después de que ya la haya creado.
No por seguridad. El secreto en el LDAP no representa un riesgo mayor ni menor a largo plazo si las restricciones se verifican antes. Además, no está aumentando o disminuyendo la fuerza de la seguridad LDAP al verificar antes. Todas las probabilidades a largo plazo están intactas.
Note que seguí diciendo: "A largo plazo". La velocidad de un ataque de fuerza bruta se puede aumentar agregando un cheque adicional porque las respuestas negativas pueden regresar más rápidamente con un chequeo anterior. El espacio de permutación válido (conjunto de restricciones) podría ser determinado más rápidamente por un atacante inteligente si la respuesta negativa devuelve más rápidamente.
Por otro lado, los atacantes pueden tener mucho tiempo de todos modos. Además, su departamento podría agregar un retraso de respuesta de falla de restricción si lo eligieran.
Otras personas en mi departamento sienten que esas restricciones deben revisarse nuevamente antes de enviar la combinación de nombre de usuario / contraseña para autenticar.
Al lado de las otras personas por un momento, puede haber valor para el usuario si las entradas de contraseña mal escritas se detectan antes. A nadie le gusta esperar 10 segundos durante el alto volumen solo para descubrir que se presionó una tecla incorrecta no especificada.
Puede haber valor para la red, el servidor LDAP y niveles más bajos en el sistema durante los períodos de alta carga si se detectaron errores de forma anterior. Dudo que la mejora sea lo suficientemente significativa como para justificar la adición.
Personalmente, no agregaría la verificación adicional porque creo que es más probable que reduzca la seguridad en lugar de aumentarla, y agrega una operación de mantenimiento. Cada vez que se cambian las restricciones en el servidor LDAP, las restricciones deberían cambiarse en la verificación anterior. Agregar un poco de automatización para evitar esa necesidad sería otro componente del sistema que debería mantenerse. No es una gran idea.
No hay una necesidad imperiosa de argumentar en contra de la adición si se está formando un consenso en el departamento proporcionado
-
Las restricciones LDAP originales se dejan en su lugar,
-
El conjunto de restricciones de contraseña es lo suficientemente conservador como para que los ataques de fuerza bruta no sean realistas incluso si el atacante se entera de las restricciones,
-
Y no tiene la responsabilidad personal de mantener la nueva verificación de restricciones funcionando y perfectamente alineado con las restricciones del servidor LDAP.