El problema con esto es que en la práctica actual, el correo electrónico no es realmente un canal muy seguro para enviar este tipo de información. No hay mucha información. una forma de evitar esto, a menos que convenza a la masa abrumadora de la humanidad para cambiar drásticamente sus hábitos de correo electrónico. Probablemente eso nunca sucederá, así que tenemos que vivir con él lo mejor que podamos.
Si un enlace de "autenticación" caduca después de poco tiempo, el riesgo de una fuga es mínimo. Es muy poco probable que alguien entre en la cuenta de correo electrónico entre el momento en que -El correo es enviado y la hora en que el usuario lo ve. También ayuda si, una vez que se hace clic en el enlace, expira inmediatamente, porque esto hace que la ventana de oportunidad sea aún más corta.
Para los fines de restablecimiento de contraseñas, esto generalmente se considera "suficientemente bueno". En estos casos, la ventana de oportunidad para un atacante es muy corta , porque el usuario tuvo que desencadenar deliberadamente la creación del enlace y le pedimos que verificara su correo electrónico. Es probable que lo compruebe y haga clic en el enlace en cuestión de minutos. Eso es lo que queremos.
Pero cuanto más tiempo permanezca activo ese enlace, mayor será el riesgo de que alguien más vea el enlace primero. Si lo usan, tendrá problemas, porque no tiene forma de saber que esto no es el usuario al que deseaba enviar el mensaje. Esa es la razón basada en la seguridad por la que no es una buena idea usar un enlace de autenticación a largo plazo.
Hay otra razón más pragmática: ¿cómo recordará el usuario qué enlace usar? Si el usuario tiene que memorizar o escribir su propia URL de autenticación, es al menos tan difícil de usar como una contraseña. , plus el usuario deberá escribirlo en lugares donde no se ocultará. Si confiamos en que el usuario haga un marcador del navegador, tan pronto como el usuario tenga que tratar con varias máquinas (salvo los mecanismos de sincronización del navegador, que presentan sus propios problemas), el marcador se perderá. Si el usuario tiene que revisar su correo electrónico cada vez que quiere iniciar sesión, ese es otro cuadro de diálogo de usuario / pase, y aunque no tenemos que preocuparnos, todavía no hemos guardado ningún usuario. tiempo.