Ano*_*ous 3 security passwords login user-accounts
[编辑:在这里被认为是话题外的,并重新发布到https://security.stackexchange.com/questions/71657/should-email-verification-be-followed-by-password-based-login-why]
一个典型的帐户创建过程似乎是:
但是,我曾经读过某处(但现在找不到,这就是我要问的原因),一个更好的过程将修改步骤3,以要求用户也使用步骤1中提供的密码登录。理由是,这种额外的预防措施可确保验证电子邮件地址的人与创建帐户的人相同。
问题:以上解释是否有意义,我是否应该通过要求基于密码的登录来实施电子邮件验证?
这对我来说很有意义,至少似乎没有什么害处-除了使用户体验变得更加麻烦之外。但是我看到许多不需要此功能的在线服务,我想知道为什么。
例如,这是我担心的情况。如果#1人最初创建了帐户但指定了错误的电子邮件地址(恶意或意外)并将其发送给#2人该怎么办。如果#2天真幼稚,他/她可能只需单击链接即可验证该电子邮件地址,然后再忽略它。这样,#1人仍然可以使用密码登录。假设第1个人对该帐户执行了各种不良操作。第二个人会负责吗?
我认为另一种解决方案可能是要求新用户只指定一个电子邮件地址,然后使用散列令牌确认该地址,然后要求他们设置密码。但是,我也看不到有很多以这种方式进行操作的在线服务。
小智 5
这就是我要做的:
创建帐户后,您可以在该位置登录该用户,即该用户创建一个帐户并直接登录。
同时,您显示一条消息或某些信息(也许不激活用户的服务),告诉用户他/她已收到一封带有链接的电子邮件,以验证和确认他/她的帐户。
当用户单击链接时,它要求他登录以进行确认。如果是同一用户(我们希望是这样),则浏览器应该能够找到会话cookie,将两个和两个放在一起,并将标识/识别用户的会话详细信息与哈希链接相匹配(还可以识别用户)并自动确认帐户。这样可以在较短的过程中确保您所需的安全性。
现在,让我们看一下您担心的情况-用户输入错误的电子邮件,然后发送给其他人。首先,在确认电子邮件中添加“不是您?忽略此消息”的注释。现在,我是天真的“别人”,尽管我从未在您的网站上创建过帐户,但还是决定单击该链接。但是,当我这样做时,我会看到一个页面,要求我登录!由于我不知道密码,因此无法登录,并且由于无法登录,因此无法确认帐户!简单!
对于错误输入电子邮件的用户,请在您的网站上添加一个选项,该选项允许用户更改他/她指定的电子邮件地址。
| 归档时间: |
|
| 查看次数: |
729 次 |
| 最近记录: |