我设置我的网站需要唯一的电子邮件地址(没有两个用户可以有相同的电子邮件地址),但我意识到,这可以让某人检查是否有人在我的网站注册,试图注册的电子邮件。当然,这个人必须知道他们想要尝试的电子邮件地址,但这对一些人来说可能是有用的信息(例如那些想看看他们的用户是否在我的网站上注册的竞争对手)。
是否有任何真正的方法来阻止这种情况,或者说这仅仅是一种可能吗?
编辑:为了澄清,这是关于创建一个帐户。即使你提供一个通用的“无效登录”错误登录,你如何要求一个唯一的电子邮件地址或用户名,而不披露哪些用户名或电子邮件地址是有效的?
另外,更晚的编辑:这里没有考虑的一件事是,当您允许用户在创建帐户后更改他们的电子邮件地址时,要保持对唯一电子邮件地址的要求。在这里,我接受的发送“忘记密码”电子邮件的解决方案几乎不起作用。相反,似乎唯一的选择是使用captchas或限制电子邮件地址可以在一定时间内更改的次数来限制自动尝试。
发布于 2009-06-28 18:50:31
如果有人试图注册一个现有的帐户-发送“更改您的密码”电子邮件,而不是“新帐户”电子邮件(并解释原因)。
将HTTP响应保留为一个简单的“确认电子邮件已发送到您指定的地址。请按照其中的说明继续”。
发布于 2009-06-28 18:51:05
我想问题是,如果有人忘记了他们的密码,你会要求他们输入他们的电子邮件地址,如果找到匹配的话,你会把密码发到那里?
因此,当用户注册他们的电子邮件地址时,您可以让他们提供一个问答问题。这对您的用户来说是一个更大的痛苦,但是如果安全性是一个问题,那么他们可能会选择它。
另一种可能是你的登记表。在这种情况下,用户可以输入一个电子邮件地址,看看它是否已经“被拿走”。
为了解决您的担忧,您应该愉快地接受所有注册,并发送确认电子邮件,即使它们已经注册。这样用户就不知道他们是否第一次注册了电子邮件地址。
最后,如果给出了不正确的用户名/密码,不要告诉用户哪个是坏的。
我不认为这是一个可怕的安全风险,除非该网站的成员是敏感的,在这种情况下,你可以使用一些模式所描述的。
发布于 2009-06-28 18:48:50
是的,这是可能发生的,除了及时限制检查/注册尝试的次数之外,您什么也做不了。这至少会阻止你的竞争对手进行自动检查。当然,如果有人决定检查他的女朋友是否在那里注册,那么他就会有这种可能性。
https://stackoverflow.com/questions/1055494
复制相似问题