当用户在我的网站上注册时,我应该验证电子邮件地址吗?

时间:2009-07-03 16:30:21

标签: asp.net-mvc process theory membership

我现在有一个测试版会员网站...目前,当用户注册时,它会将该帐户标记为未经验证,并向他们发送一封电子邮件,其中包含用于验证其帐户的链接。

这样做的真正原因是确保他们正确输入了有效的电子邮件地址。

因此,我正在考虑删除验证步骤,以便更快,更轻松地进行注册。只需让它创建一个他们可以立即登录的帐户。

该网站使用PayPal进行付款处理,因此本地不存储敏感数据。它还只在注册时要求输入用户名,电子邮件地址和密码。所以,真正最敏感的信息就是电子邮件地址。

如果我决定这样做,我可能面临哪些问题?显然,垃圾邮件就是其中之一 - 但我正在开发处理垃圾邮件的方法。还有什么吗?

你强烈建议不要这样做,为什么?如果重要,我将在ASP.NET MVC平台上构建它。

提前致谢!

7 个答案:

答案 0 :(得分:5)

我会说,注册,获取电子邮件,点击电子邮件中的链接的工作流程现在相当普遍,不会让大多数用户失望。我不会说,一般用户期望这样,并且会不信任一个没有这样做的网站,但它正在这样做。

它为用户提供了额外的安全感,这些用户现在知道您首先会阻止垃圾邮件发送者,而不是仅仅在事后处理它们。

另见backslash17's answer关于确保电子邮件地址的所有者是进行注册的人。

答案 1 :(得分:4)

删除地址验证的一个问题是,任何人都可以注册用户,并且您不会有任何关于电子邮件但用户打算在您的网站中注册的验证方法。

答案 2 :(得分:4)

即使您找到其他方法来处理垃圾邮件,也有另一个重要的考虑因素

如果您让用户输入任何旧的电子邮件地址,他们可能会输入其他人的电子邮件地址。您发送给用户的任何电子邮件都将成为不是您网站成员的的未经请求的垃圾邮件

如果您打算使用客户的电子邮件地址,您有责任确保它们是正确的。

答案 3 :(得分:1)

验证电子邮件地址背后的想法是减少针对垃圾邮件注册的虚假帐户的数量。大多数网站已经使用过这种方法,所以如果你这样做,你肯定不会失步。

您可以随时选择它,如果您发现有很多垃圾邮件帐户被注册,您可以重新启用该功能。

另一种选择是将reCAPTCHA添加为人工验证而非电子邮件验证。

答案 4 :(得分:1)

很高兴知道输入的电子邮件地址有效。但是,它对网站的核心功能很重要吗?您是否可能需要再次与用户联系?如果电子邮件只是用户的辅助属性,则可以将其设置为“可虚拟”。另一件需要考虑的事情 - 人们多久会访问您的网站?如果它很少,并且他们捏造了电子邮件地址,提供“忘记密码”选项变得困难: - )

如果您不强制验证,我建议您执行类似CodeProject的操作。如果您尚未在一段时间中验证您的电子邮件地址,他们会放置一个漂亮的黄色横幅,通知您您的电子邮件地址可能已过期。它不引人注目且有效。我还建议发送一封“Welcome to widgets inc”电子邮件,邀请您点击该链接并验证电子邮件地址。这样任何报名参加billyg @ microsoft的人都会失败: - )

我打算包含一个链接到一个非常棒的.net摇滚节目,关于电子邮件验证和服务器瘫痪和垃圾邮件和很多好的,但我找不到它!我认为是Ayende或Oren或其中一个聪明人。有谁记得那集吗?

答案 5 :(得分:0)

我总是建议验证电子邮件地址以减少虚假帐户/垃圾邮件。

如果您使用Drupal,他们会非常容易。如果您愿意,可以手动批准用户...此外,它还会向他们用于继续授权过程的地址发送电子邮件。

看到这么多人尝试垃圾邮件板 - 我强烈建议验证并使用验证码

答案 6 :(得分:0)

除了垃圾邮件之外,我能看到的主要问题是,如果有人忘记密码并且碰巧提供了无效的电子邮件地址。如果您能够提出另一个解决方案(并控制垃圾邮件),那么我不会立即看到即时注册的任何其他缺点。