Me gustaría reemplazar las contraseñas con un código temporal que se envía por correo electrónico al usuario. El flujo de inicio de sesión sería así:
- El usuario ingresa su dirección de correo electrónico. "Si ese correo electrónico pertenece a un usuario, se enviará un código" para evitar la divulgación de correos electrónicos válidos.
- El usuario recibe un código alfanumérico por correo electrónico (digamos 8 dígitos de longitud y es válido por 1 hora).
- El usuario ingresa ese código como su "contraseña".
El bien:
- No se almacenan contraseñas en la base de datos.
- No es necesario restablecer la contraseña.
- Gran parte de la carga de seguridad se transfiere al proveedor de correo electrónico.
Lo malo:
- Se requiere una dirección de correo electrónico. Si pierde el acceso a él, perderá el acceso a su cuenta.
- Si olvida su dirección de correo electrónico, perderá el acceso a su cuenta.
- Es inconveniente revisar su correo electrónico cada vez que inicie sesión. Esto no sería un problema en el dispositivo móvil, donde se puede almacenar un token de API después del primer inicio de sesión.
¿Hay otros problemas, especialmente relacionados con la seguridad? Por lo que puedo decir, esto debería ser tan seguro como restablecer una contraseña. En ambas situaciones, se le envía un mensaje de correo electrónico que permite el acceso total a la cuenta.
Aquí hay preguntas similares pero con más enfoque en las cookies o sin respuestas sólidas. Me interesan más los aspectos positivos y negativos, especialmente los problemas de seguridad.
- Cómo implementar la autenticación sin contraseña en un sitio web
- Autenticación sin contraseña en aplicaciones web. ¿Qué tan seguro es?
Edición de claridad / objetivos: Los objetivos son limitar la cantidad de datos confidenciales almacenados en la base de datos (incluso si los datos están ocultos), ser accesible para los usuarios promedio (de forma remota con una conexión a Internet) y no depender de un dispositivo diferente para la autenticación. Además, sea lo más simple (UX) y seguro posible dadas esas restricciones.