Administro una aplicación de proveedor que emite cuentas (con contraseñas, por supuesto) para los usuarios finales. Por lo que puedo ver, las contraseñas de los usuarios finales se almacenan correctamente. Mi preocupación es la generación de cuenta inicial y el paso de comunicación. El primer punto de contacto con los usuarios finales a menudo no es a través de la web (es probable que sea por teléfono, correo u otros medios), por lo que la aplicación tiene muchas opciones para comunicar las credenciales de la cuenta inicial a los usuarios finales. Para facilitar esta función, la aplicación almacena la contraseña inicial en una columna de la base de datos en texto simple que puede usarse para generar cartas, paquetes de bienvenida, correo electrónico, que se muestra en la pantalla para comunicarse por teléfono, integrado con otros sistemas de software, etc.
Aquí hay un factor mitigante. El usuario final debe cambiar esta contraseña antes de poder completar su primer inicio de sesión. La contraseña modificada no se vuelve a escribir en la base de datos en texto sin formato y no se almacena en un formato recuperable. La contraseña original solo es válida durante unas semanas como máximo antes de que se cambie. Además, el usuario final no puede hacer nada con una cuenta nueva que no se pueda revertir si es necesario. Puede ser posible filtrar información personal, pero creo que una nueva cuenta no mostrará ningún dato que no se considere información de directorio.
Sin embargo, todavía me molesta que esta contraseña de texto sin formato exista en absoluto y se cuelgue incluso después de que se haya reemplazado. Dados los factores atenuantes, ¿sigue siendo esto un gran problema?