Diseña tu política de contraseñas
Obtén información sobre cómo elaborar políticas de contraseñas de productos que sean compatibles, seguras y fáciles de usar, con Logto asegurando la seguridad de tu proceso de autenticación.
¿Tu contraseña realmente te protege?
En tu producto, es probable que necesites depender del método clásico de autenticación: las contraseñas. Aunque las contraseñas no serán reemplazadas completamente, son más vulnerables a ataques en comparación con métodos de autenticación alternativos. ¿Son tus políticas de contraseñas realmente seguras y compatibles? Incluso si estás familiarizado con diversas técnicas de políticas de contraseñas, ¿es realmente efectivo combinarlas?
Abordamos la complejidad del diseño y la configuración de políticas de contraseñas realizando una investigación profunda sobre las especificaciones NIST, examinando políticas de contraseñas de productos líderes y asegurando una experiencia de usuario equilibrada. Enfatizando la importancia del cumplimiento de las contraseñas, nuestro objetivo es aliviarte de los desafíos asociados con la estrategia de contraseñas y proporcionar un proceso integral para garantizar la seguridad de la cuenta a través de la integración perfecta de contraseñas con otros factores de verificación de Autenticación Multifactor (MFA).
¿Qué tipo de contraseñas necesitan los usuarios?
Los diseñadores de productos a menudo se enfrentan a la pregunta de si sus productos son lo suficientemente seguros, lo que lleva a la implementación de políticas de contraseñas estrictas y complejas. Por ejemplo, exigir una combinación de letras mayúsculas y minúsculas, números e incluso caracteres especiales, o exigir cambios regulares de contraseñas para los empleados.
Cuando se enfrentan a tales requisitos de contraseñas, los usuarios son rápidos en expresar sus quejas: "¿Por qué tiene que ser tan complicado? ¡Recordar mis contraseñas se siente como un trabajo de tiempo completo!" Esto deja a los gerentes de producto rascándose la cabeza, preguntándose si una política de contraseñas más compleja es necesariamente mejor. Desglosaremos los componentes de una política de contraseñas integral para averiguarlo.
En la siguiente sección, profundizaremos en las sutilezas de las políticas de contraseñas, encontrando un equilibrio entre la seguridad y la conveniencia del usuario. Exploraremos cómo definir los requisitos adecuados para las contraseñas y proporcionaremos información respaldada por datos para apoyar nuestro enfoque.
Una lista de verificación de todos los factores de contraseña
Primero, después de analizar numerosos productos y especificaciones de NIST, hemos compilado una lista completa de factores de contraseñas y recomendaciones de diseño.
Los hemos categorizado aproximadamente en tres grupos:
- Requisitos para configurar contraseñas: Requisitos mínimos para contraseñas configuradas por el usuario.
- Monitoreo de seguridad de contraseñas: Acción y retroalimentación rápidas cuando se detectan riesgos de contraseñas.
- Experiencia del usuario con contraseñas: Mejorar la experiencia de entrada del usuario durante la creación y validación de contraseñas.
Catálogo | Factores | Análisis (Refiérase a https://pages.nist.gov/800-63-3/sp800-63b.html#sec5 ) |
---|---|---|
Configuración de requisitos de contraseñas | Longitud | Aumentar la longitud de la contraseña es más efectivo para disuadir el desciframiento de contraseñas que la complejidad. NIST sugiere al menos 8 caracteres de longitud, pero se deben permitir contraseñas más largas. |
Tipos de caracteres | Las contraseñas pueden admitir varios tipos de caracteres, incluyendo letras mayúsculas, letras minúsculas, números, símbolos y Unicode (también se deben permitir los caracteres de espacio). | |
Las políticas de contraseñas NO DEBEN solicitar a los usuarios recordar tipos específicos de información, ya que se ha demostrado que esto aumenta la complejidad sin mejorar eficazmente la seguridad. https://www.notion.so/General-f14f0fb677af44cb840821776831a021?pvs=21 | ||
Frases de baja seguridad | Se aconseja pedir a los usuarios que cambien sus contraseñas cuando usen patrones fácilmente adivinables o descifrables, como caracteres repetitivos o secuenciales, palabras comunes, información del usuario o información del contexto del producto. | |
Contraseña filtrada | Las nuevas contraseñas de usuario deben comprobarse con una lista de contraseñas filtradas para asegurar que no estén comprometidas. | |
Monitoreo de seguridad de contraseñas | Limitación de la tasa de verificación de contraseñas | Limitar el número de intentos incorrectos de contraseñas consecutivos. Cuando se alcance este límite, implementar medidas de seguridad como requerir Autenticación Multifactor (MFA), enviar notificaciones push, imponer tiempos de espera, o incluso suspender temporalmente la cuenta. |
Forzar el cambio de contraseña | NO se debería exigir que las contraseñas se cambien arbitrariamente. Sin embargo, los verificadores DEBEN forzar un cambio de contraseña si hay evidencia de un autenticador comprometido. | |
Historial de contraseñas | Mantener un registro de contraseñas anteriores que no se pueden reutilizar. No se recomiendan restricciones excesivas sobre el reutilización de contraseñas, ya que los usuarios pueden eludir esta regla mediante modificaciones menores. | |
Limpiar sesión después de cambiar la contraseña | Permitir a los usuarios elegir si cerrar sesión en otros dispositivos después de cambiar su contraseña. | |
Experiencia de entrada de contraseñas | Medidores de fuerza de la contraseña | Ofrecer orientación a los usuarios para ayudarlos a seleccionar secretos memorizados fuertes. |
Indicación de contraseña | Evitar mostrar pistas de contraseñas, ya que aumentan la probabilidad de acceso no autorizado. | |
Copiar y pegar la contraseña | Permitir el uso de la funcionalidad "pegar", lo que facilita el uso de gestores de contraseñas. | |
Ver contraseña | Proporcionar una opción para mostrar la contraseña como se introduce, en lugar de mostrar una serie de puntos o asteriscos, hasta que se envíe. |
Una herramienta para configurar tu experiencia con las contraseñas
Quizás no tengas la paciencia para revisar todos los elementos de la lista de verificación. Si diseñáramos una herramienta poderosa de contraseñas que abarque todas estas opciones de configuración, podría convertirse en un dolor de cabeza para los desarrolladores, incluso más complejo que las propias políticas de contraseñas. Por lo tanto, simplifiquemos aún más los factores de contraseñas en tres pasos.
Paso 1: Descarta reglas innecesarias
Como se mencionó en la tabla, algunas reglas de contraseñas desactualizadas pueden parecer mejorar la seguridad, pero ofrecen poco a cambio, a menudo causando frustración y confusión entre los usuarios.
- Evita limitar la combinación de caracteres que los usuarios deben usar; restringir el número de tipos de caracteres es suficiente. Por ejemplo, Facebook, Discord y Stripe no requieren una combinación específica de tipos de caracteres, y la política de contraseñas de Google simplemente pide "Al menos dos tipos de letras, números, símbolos".
- No es necesario exigir cambios periódicos de contraseñas, ya que esto coloca una carga innecesaria en la memoria de los usuarios. En su lugar, exige un cambio de contraseña solo cuando hay riesgo de compromiso de las credenciales.
- Solo elige uno de los límites de contraseña, entre los claros requisitos mínimos de contraseña y los medidores de fuerza de contraseña para prevenir malentendidos del usuario.
- Evita mostrar reglas excesivamente complejas desde el principio, impidiendo que los usuarios se centren en leer sobre errores que no necesariamente ocurren.
- Abstenerse de usar pistas de contraseña para evitar dar una ventaja a posibles atacantes.
Paso 2: Proporciona personalización para diferentes productos
Ofrecemos opciones de configuración flexibles para las políticas mínimas de contraseñas, con valores recomendados para reducir la curva de aprendizaje para los desarrolladores y proporcionar una Experiencia de Inicio de Sesión lista para usar. Estas opciones incluyen:
- Longitud mínima: Valor por defecto de 8 caracteres, mínimo 1.
- Tipos mínimos de caracteres requeridos: No se recomienda restricción, es decir, configura 1 de 4.
- Vocabulario de restricción de contraseñas: Se sugiere habilitar todas las restricciones. Los usuarios no pueden evitar activar el mismo vocabulario, pero se permite agregar tres o más caracteres no consecutivos para aumentar la complejidad de la contraseña. Esta adición aumenta el desorden de las contraseñas.
- Contraseña comprometida prohibida: Usa una base de datos confiable de contraseñas filtradas para respaldo, evitando que los usuarios usen contraseñas idénticas para evitar ataques de directorio directos.
Paso 3: Asegura la seguridad con valores fijos
Para parámetros que no se pueden personalizar, hemos implementado lógica de respaldo para asegurar la seguridad de las contraseñas. Si tienes requisitos de personalización específicos, siéntete libre de informarnos.
- Limitación de la Tasa de Verificación de Contraseñas: Hemos restringido el número de verificaciones incorrectas de contraseñas consecutivas y el tiempo de espera para suspender el inicio de sesión. Esto protege contra ataques continuos de contraseñas. Además, proporcionamos un webhook para las verificaciones fallidas consecutivas de contraseñas y puedes usarlo para enviar notificaciones por correo electrónico o suspender cuentas con alto riesgo de compromiso.
- Por defecto, limpiamos las sesiones en otros dispositivos después de restablecer la contraseña y actualizar el token. Esta capa extra de seguridad ayuda a prevenir el acceso no autorizado a tu cuenta, asegurando que tus datos permanezcan confidenciales y protegidos.
Conclusión
Con estos tres pasos sencillos, puedes simplificar el proceso de configuración de tu experiencia con las contraseñas, logrando el equilibrio adecuado entre seguridad y conveniencia para el usuario. Logto hace que sea fácil configurar un sistema de autenticación seguro y fácil de usar para tu producto. Mantente atento a nuestra próxima función de MFA, y toma el control de la seguridad de tu producto como nunca antes.