我们真的需要电子邮件确认吗?

20

我已经养成了在每个支持用户认证和免费注册的站点使用标准的注册->发送激活电子邮件->激活账户流程的习惯,而不会质疑我是否真的需要它。

你对此有什么想法?如果我在注册表单上加上验证码,那么电子邮件确认流程是否真的必要?

编辑:

好的,那么普遍意见似乎是通过让用户确认他们输入的电子邮件地址,我将使他们远离将别人的电子邮件地址放在里面。但是,当我让用户编辑他们的个人资料/设置并输入另一个电子邮件地址时呢? 如果我需要防止他们输入其他人的电子邮件地址,那么每次更改后我都需要通过临时停用他们的帐户来确认该电子邮件地址。


我认为仅使用验证码就足够了,但是根据您的项目和与您有相同目的的竞争对手的网站情况,您应该毫不犹豫地考虑使用验证码+电子邮件激活。 - Fábio Antunes
我曾考虑不使用电子邮件确认,而只使用reCAPTCHA,但我遇到了用户为了某些好处而创建多个假账户的问题。例如,在SO上,我可能会创建100个假账户并点赞我发布的所有内容,但电子邮件确认太麻烦了,谢谢。 - Jaqx
9个回答

23

验证码和邮件激活同时防止机器人和欺诈行为

基本上,每个部分都可以防止一个问题场景:

  • 验证码(如果使用像reCaptcha这样的强大验证码)可以防止机器人注册新用户
  • 电子邮件激活可以防止他人(通过其电子邮件地址)注册其他人。

我想这是一个被IT社区广泛认可的有效的注册日常模式。

编辑
是的。当您想要防止用户更改其电子邮件地址时,您必须重复电子邮件激活过程以使其更加健壮。
但是,在此过程中您不必停用他们的账户。您只需要开启待处理的电子邮件更改邮件激活即可。如果它被激活,您可以在那时更改电子邮件地址(而不是当他们更改时),否则仍然使用旧的电子邮件地址。


您的摘要不太清楚 - 电子邮件验证不能防止机器人,验证码可以。 EV(扩展验证)最基本的作用是防止身份盗窃。不确定什么是“假人”。 - Rex M
1
@Rex:一个假人就是一个假人。指声称自己是别人的人。一个假的比尔·盖茨可能是一个使用billg@microsoft.com电子邮件地址注册的约翰·多伊。 - Robert Koritnik
1
@Robert 通常,“假人”指的是不存在的人。你所描述的更好的词可能是“冒充”或“身份盗窃”。 - Rex M

6
如果你不确认电子邮件,那么你假定注册该服务的用户拥有该电子邮件帐户。如果向与您的系统无关的人发送大量的系统电子邮件、重置密码等,那么该怎么办呢?如果这是我的电子邮件,我会非常生气。
另一种情况:如果注册时输入的电子邮件地址有误怎么办?假设他没有在您的应用程序中检查他的“帐户设置”,也没有更改电子邮件,并需要重置密码。如果电子邮件地址被错误地注册,那么这是您在之前未检查的过错。
当然,我只是针对那些确实需要创建帐户的服务提出这个建议。尽可能避免 登录屏障,或者在您的服务不是如此关键时使用openid。

5
你应该认真考虑支持OpenID。其主要好处是减少了用户的复杂性。当存在一种可行的替代方案时,没有理由强迫人们记住数百个站点的登录凭据。虽然没有全球网民数据库,也很可能永远不会有,但OpenID大大简化了情况。我知道作为一个用户,我觉得Stack Overflow的注册过程很轻松和容易。我希望更多的站点使用OpenID。 http://openid.net/get-an-openid/what-is-openid/

12
OpenID可能适合IT人士(这也是为什么在SO上使用它的原因),但普通互联网用户可能无法使用它,他们可能会很容易混淆。 - Robert Koritnik
...和标签一样。在SO上效果很好,但在非IT社区中则不适用。 - Robert Koritnik
2
我发现在WordPress中使用OpenID非常麻烦。我甚至不会考虑强制要求我的用户使用它。 - Mark Brittingham
2
在某个时候,“非IT人士”没有密码、电子邮件或验证码,但他们已经学会了如何应对这些。他们会适应的,只是比我们这些优越的存在慢一些。 - rmeador
@Will和@rmeador:我同意他们会习惯它。但是在他们获得这种知识之前,您的服务可能会停止运行。如果您想现在销售您的服务,您必须考虑您的用户现在能够做什么,而不是(近)未来... - Robert Koritnik
1
几天前,我会说OpenID对于普通用户来说可能有点令人困惑。但是,在看到DotNetOpenID项目中最简单的实现和OpenID 2.0的美丽之后,我成为了OpenID的忠实粉丝。现在,您可以通过点击Google或Yahoo登录按钮而不是输入OpenID地址来进行注册。事实上,我正在为我的网站添加一个只使用OpenID的登录系统,因为它变得非常简单易用。 - Steve Wortham

4
这是最基础的身份验证尝试。它鼓励用户在返回时重复使用同一个帐户(通过共享的标识符,您和他们可以使用它来重新连接),并且它可以防止冒充,因为它需要访问所声明的身份作为证明。
它并不完美,但理论上的东西永远比什么都没有要好得多。
如果您的网站上身份不重要(例如,您的服务在每次使用后都是一次性的),则不需要电子邮件激活。否则,您可能需要它。

为什么一个“一次性使用后即丢弃”的网站会有用户注册呢? - Robert Koritnik
@Robert,你说得对,它不会是那种注册。但它可能仍然期望姓名、联系信息等,这也算是一种注册。 - Rex M
@Robert 我认为他并不是绝对意义上的“每次使用后”。例如,reddit.com没有使用电子邮件确认,因此它可以让用户更轻松地创建一次性账户(请参见IAMA或GoneWild子版块,您就会明白原因)。 - Vasil

4
在我的网站上,我允许用户注册并在确认了他们的电子邮件地址之前进行所有非公开操作。由于我运营一个游戏网站,这意味着用户可以获得奖章、发布分数,但在验证了他们的电子邮件地址之前不能在论坛中发帖或在博客中发表评论。我发现这种方法效果不错,目前已经有16000个注册用户。

3
我认为这样做既不必要也很烦人。如果可以的话,我会避免这样做。
然而,如果符合以下条件之一,我会这样做:1)程序将发送电子邮件,因此我可以测试电子邮件地址是否有效;或者2)这是一个非常大型、面向公众的网站,在这种情况下,我想尽可能过滤掉许多潜在问题。

2
对于大多数基本网站,我不会使用电子邮件激活或验证码。这两种方法对于专业垃圾邮件发送者来说相对容易绕过和克服,并且只会给大多数用户带来烦恼,导致一定比例的用户流失。根据我的经验,更加关注成员发布内容的垃圾邮件过滤器对于整体投资回报率更好。
对于内容更为严肃的网站,通常会有更为严肃的用户。在这种情况下,我会尽我所能采取措施来对抗垃圾邮件。

1

当需要确认时,我发现发送电子邮件非常有用。这可以确保我是使用该电子邮件地址注册的人。

即使有验证码,您仍然可以注册其他人的电子邮件地址,尽管他可能会或可能不会批准该确认。


0

您似乎只需要电子邮件确认来确认身份,而不是通过电子邮件发送有用的内容。但是电子邮件确认只是达到目的的一种手段。您可以考虑其他方式,最好是不那么侵入性的方式。

通常您可以检查以下内容:

  • 您本人(例如指纹、虹膜扫描)
  • 您拥有的东西(例如令牌、信用卡、钥匙、访问电子邮件帐户)
  • 您知道的东西(例如个人识别码、密码、您母亲的体重、您最喜欢的已故宠物的名字、以英寸为单位测量的最私密部位的乐观长度)

此外,您还可以将检查委托给他人;信用卡公司、电话公司、某人的朋友等。

示例:GoogleMail在创建GMail帐户时无法要求确认电子邮件地址。相反,早期采用者有限的“邀请”供与朋友分享。

因此,除非您实际上需要我接收您通过电子邮件发送的信息(我通常也不喜欢),否则您可能倾向于采用更有创意/有趣的方式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接