如何在注册表单中处理重复的电子邮件地址?

时间:2013-04-13 16:24:13

标签: security web-applications

我理解,对于忘记密码表单,从安全角度来看,最佳做法是不要显示是否存在电子邮件地址。相反,您可以发出一条消息,上面写着“谢谢。如果我们有一个拥有此地址的用户,我们会发送电子邮件”。

如何在注册表单中处理此安全问题,以确保两个用户无法使用相同的电子邮件地址注册,但您不想透露用户当前是否存在电子邮件地址?

2 个答案:

答案 0 :(得分:1)

我从未见过拒绝承认任何用户是否有指定电子邮件地址的网站。通常的做法是让用户知道所提供的电子邮件地址是否与任何用户匹配。

重新解释您的第二个问题:“如何告诉用户他们的注册请求是不允许的,而不告诉他们为什么”?我从来没有看到网站这样做。

答案 1 :(得分:0)

用户名应该是唯一的(可能是电子邮件 - 在这种情况下,电子邮件是唯一的) 此外,要以安全的方式启用密码还原,您应确保注册期间的每个用户都提供电子邮件地址 (它可能不是唯一的。在这种情况下,可能同一个用户注册不止一次)

在密码恢复期间(忘记我的密码用例),用户应提供用户名,并将密码发送到用户在注册期间提供的电子邮件中。 如果用户名是电子邮件 - 请务必在用户注册期间收集其他信息。例如,电话号码。请在恢复密码前要求提供电话号码

附加提示:使用验证码。