在创建帐户期间,最好自动生成密码并将其发送给用户,还是让用户创建自己的密码?


11

今天,在与一位同事讨论我们正在研究的网站的“创建帐户”页面时出现了这个问题。

我同事的意见是,我们应该使注册尽可能快速和无缝,因此,我们只需要向用户询问他的电子邮件,然后剩下的就好了。

我同意这个意图,但是对此有一些担忧:

  • 由于我们生成了密码,因此我们责任确保密码足够安全
  • 以我的经验,当遇到难以理解的密码时,用户可能会将其写下来
  • 没有写下密码的用户很可能会忘记它。这意味着他们必须定期要求输入新密码,这对任何人都不好玩

但是,考虑到用户创建的密码的一般质量,以及太多的人倾向于对所有事物使用相同的密码(“发声者”)的事实,我可以看到为他们生成强密码的意义。

我仍然为此感到痛苦。我们正在商人网站上工作,用户可以选择保存其信用卡详细信息,因此使用最安全的方法显然非常重要。


3
我想有人必须参考:xkcd:密码强度
candied_orange

@CandledOrange强制性XKCD参考
Dryr,2017年

11
作为消费者,当我使用您的网站并为您生成密码时,就是我删除帐户的那一刻。
埃里克·金

4
也许这个问题更适合于User Experience SE。已经有一个类似的问题,并且给出了有趣的答案:您是否可以放弃注册表单中的密码字段
此处插入用户名,2017年

19
电子邮件不是安全的通信渠道。不要通过电子邮件发送密码。只在短时间内(例如24小时)有效的令牌可能没问题。您无法避免使用密码,但可以鼓励使用密码管理器:专用软件,“记住密码”浏览器功能和物理笔记本都是合法策略。提供密码不会鼓励良好的安全习惯。另外,在不存储密码的地方实现登录选项,例如“使用Google登录”。使用外部付款处理者,这样我就不必用我的付款详细信息来信任您的网站。
阿蒙(Amon)

Answers:


11

电子邮件方法的优势在于,通过这种方式,您可以确保用户确实提供了他/她控制的有效电子邮件帐户。

但是,众所周知,电子邮件渠道是不安全的。这意味着可以截获密码。因此,只有在首次登录时仅使用一次生成的密码并且确保用户必须更改密码时,才应考虑使用此方法。

从某种意义上讲,与您的网站的tls / ssl连接很难被拦截而不被发现,从某种意义上说,直接方法更安全。


2
通常,两种方法一起使用:输入电子邮件和密码,然后接收包含激活链接的电子邮件。
mouviciel

@mouviciel是的,en effet。这种使用密码和链接的两步方法似乎是最常用的方法,并且肯定不是没有道理的:-)比较安全,因为激活链接通常仅用于激活而不用于登录。对于OP,这将需要开发用于发送激活链接并根据帐户跟踪激活的逻辑。
克里斯托弗(Christophe)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.