Durante la creación de la cuenta, ¿es mejor generar la contraseña automáticamente y enviarla al usuario, o dejar que el usuario cree su propia contraseña?

11

Esta pregunta surgió hoy mientras discutía con un colega sobre la página 'crear cuenta' para el sitio web en el que estamos trabajando.

La opinión de mi colega es que debemos hacer el registro lo más rápido y sin problemas posible, por lo tanto, solo debemos pedirle al usuario su correo electrónico y ocuparnos del resto.

Estoy de acuerdo con la intención, pero tengo algunas preocupaciones al respecto:

  • Dado que generamos la contraseña, que tenemos la responsabilidad de asegurarse de que la contraseña es lo suficientemente fuerte
  • En mi experiencia, cuando se enfrentan a una contraseña ininteligible, es probable que los usuarios la anoten en una publicación.
  • Es muy probable que los usuarios que no escriban la contraseña la olviden. Lo que significa que tendrán que pedir una nueva contraseña regularmente, y eso no es divertido para nadie

Sin embargo, teniendo en cuenta la calidad general de las contraseñas creadas por los usuarios y el hecho de que demasiadas personas tienden a usar la misma contraseña para todo ('estremecimientos'), puedo ver cómo tendría sentido generar una contraseña segura para ellos.

Todavía me siento desgarrado por eso. Estamos trabajando en un sitio web comercial donde el usuario tiene la opción de guardar los datos de su tarjeta de crédito, por lo que obviamente es muy importante que utilicemos el enfoque más seguro.

Secadora
fuente
3
Supongo que alguien tiene que hacer referencia a esto: xkcd: Fortaleza de la contraseña
candied_orange
@CandledOrange Referencia obligatoria de XKCD
Dryr
11
Como consumidor, el momento en que uso su sitio y genera una contraseña para mí es el momento en que borro mi cuenta.
Eric King
44
Quizás esta pregunta sea más adecuada para User Experience SE . Ya hay una pregunta similar con respuestas interesantes también: ¿Se desharía del campo de contraseña en el formulario de registro ?
insertusernamehere
19
Los correos electrónicos no son un canal de comunicación seguro. No envíe contraseñas por correo electrónico. Los tokens que solo son válidos por un corto período de tiempo (por ejemplo, 24 horas) podrían estar bien. No puede evitar las contraseñas, pero puede alentar el uso de administradores de contraseñas: el software dedicado, las funciones del navegador "recordar mi contraseña" y las libretas físicas son estrategias legítimas. Proporcionar una contraseña no fomenta los buenos hábitos de seguridad. Además, implemente opciones de inicio de sesión como "iniciar sesión con Google" donde no almacena contraseñas. Utilice procesadores de pago externos para que no tenga que confiar en su sitio con mis detalles de pago.
amon

Respuestas:

11

La ventaja del enfoque de correo electrónico es que se asegura de esta manera que el usuario proporcionó una cuenta de correo electrónico válida que él / ella controla.

Sin embargo, el canal de correo electrónico es notoriamente inseguro. Esto significa que la contraseña podría ser interceptada. Por lo tanto, este enfoque solo debe considerarse si la contraseña generada se usa solo una vez, al primer inicio de sesión, y si se garantiza que el usuario debe cambiarla.

El enfoque directo es más seguro, en el sentido de que una conexión tls / ssl a su sitio web es mucho más difícil de interceptar sin ser notada.

Christophe
fuente
2
Por lo general, ambos enfoques se usan juntos: ingrese el correo electrónico y la contraseña, luego reciba un correo electrónico que contenga un enlace de activación.
mouviciel
@mouviciel sí, en efecto. Este enfoque de dos pasos con contraseña y enlace parece ser el enfoque más común utilizado, y ciertamente no sin razón :-) Es más seguro, porque en general el enlace de activación solo se usa para la activación y no para el inicio de sesión. Para el OP, esto requeriría el desarrollo de la lógica para enviar el enlace de activación y el seguimiento de la activación a cuenta.
Christophe