Estaba considerando crear una función de inicio de sesión automático para una extensión en la que estoy trabajando, donde un cliente que hace clic en un enlace en un correo electrónico iniciará sesión automáticamente en su cuenta.
Esto sería realmente útil, especialmente cuando se envía a clientes mayores porque hay un gran cambio en el que tendrían que presionar la contraseña olvidada para iniciar sesión y realizar una compra.
Pero, por otro lado, abriría algunas vulnerabilidades que no me entusiasman demasiado. Si un cliente reenvía el correo electrónico a su amigo y su amigo hace clic en los enlaces, también se registrará como su amigo.
De acuerdo, podría tratar de educar a sus clientes para que no reenvíen esos correos electrónicos, pero eso podría ser una batalla cuesta arriba. La idea de que reenviar un correo electrónico de marketing a un amigo les permitiría iniciar sesión en su cuenta sin autorización no es algo a lo que las personas se acostumbren rápidamente.
Pensamientos?
ACTUALIZACIÓN: Acabo de notar que Quora hace un inicio de sesión automático de sus correos electrónicos de notificación de comentarios.
Creo que no recomendaría tal característica ...
Pero de todos modos, si desea construir esta característica, considere estos puntos:
use un inicio de sesión basado en token, como http: //shop.tld/? autologintoken = AABBCCDD
si es solo la primera vez que el cliente inicia sesión, limite el token de autenticación a un inicio de sesión
haga que el token sea único por cliente y también (muy importante) no se base en el nombre de usuario / contraseña / dirección / nombre / correo electrónico / lo que sea. Mage_Core_Helper_Data :: getRandomString puede ayudarlo. Una longitud de 32 debería ser lo mínimo que diría. ¡No uses algo como md5 (time ())!
cambiar el token cada vez que el cliente cambia su contraseña
restringir el acceso a la cuenta para los clientes que iniciaron sesión con el token, por ejemplo, permitirles ingresar su contraseña si desean cambiar a la dirección de correo o acceder a los números CC. Esto podría ayudar un poco a mejorar la seguridad.
no confíes (!!!) en el navegador, cookies, IP u otra cosa
fuente