在询问电子邮件/用户名之前询问密码是否更安全?

信息安全 验证 密码 用户名
2021-09-12 05:58:49

当我 - 和许多其他人 - 登录网页或其他人时,我输入:<email or username> [tab] <password> [enter].

如果出现特定的输入错误 - 不按[tab],密码会以明文形式显示在电子邮件/用户名字段中。这在我身上发生过几次,我想我不是第一个。

如果您切换电子邮件/用户名和密码字段,则不会发生此问题。但是,没有注意到开关的人可能会在用户名字段中输入他们的密码,这是您首先要防止的。此外,我认为该开关可能会导致用户感到困惑,因为它“看起来很奇怪”。

我的问题是,是否值得切换电子邮件/用户名和密码字段?

3个回答

回答

人们是习惯性动物,现在已经习惯了标准登录页面。即,用户名然后密码)。更改此流程无疑会造成 UX 噩梦,并可能最终导致它所保护的应用程序仅基于登录页面而受到不公平的批评。

备择方案

更好的方法是不在用户名字段中设置自动焦点,以便用户必须手动单击用户名字段,从而提高他/她对自己行为的认识。

或者,如果您想对您的理论进行一些轻量级测试,请考虑将focus.onLoad()我在这里是伪编码)设置为密码字段。作为第三种选择,考虑隐藏用户名的字符。

不,这是一个糟糕的主意。

用户不会注意到开关

一项又一项的研究表明,用户不会阅读页面上的文字。他们更多地依赖于大小、位置、接近度和惯例用户假设用户 ID 在前,密码在后。如果您将它们翻转过来,无论您如何清晰地标记它们,它们仍然会将用户名放在第一个字段中,将密码放在第二个字段中,由于您的想法,它现在将以明文显示。 你只是让问题变得更糟。

有时用户 ID 必须排在第一位

某些密码管理器插件必须先输入用户 ID 才能正确选择密码。

此外,对于某些类型的反网络钓鱼缓解措施(例如 TruStamp 或“熟悉的短语”),有时必须首先输入用户 ID。

你无法阻止胖手指

当然,您解决了一种类型的错字,但引入了另一种类型的错字问题。如果用户在输入密码之前不小心按了 Tab 键怎么办?

无论你做什么,你都无法解决所有可能的错别字。在某些时候,您必须相信用户不是白痴。

有更好的选择

如果这个问题真的困扰你,你可以做一些事情。

  1. 使用电子邮件地址作为用户 ID,并且不允许在末尾的“.com”或“.org”之后输入任何数据
  2. 将密码放在不同的页面上
  3. 预先填写用户名(例如“记住我”cookie)并将焦点设置为密码
  4. 使用多种身份验证因素,使密码不那么重要

一切违背习惯的事情,在这种情况下是之前键入的电子邮件,将以某种方式被迫(通过用户抱怨)更改为默认的、最常用的/常见的行为。

只需进行 A/B 测试并查看结果。人们通常对他们看到的东西视而不见,或者习惯于每天看到。例如,如果 gmail E-mail 字段变成了 Email,那么就很难让人注意到了。

恕我直言,这与可用性模式背道而驰,并且可能导致比标准版本的电子邮件/密码更多的密码泄漏。

分析错误,缺少该错误是USER ERROR,但是如果您反转字段,并且用户在电子邮件字段中输入他的密码,即使是他的错误,也将是您引导用户执行的错误。