【问题标题】:How to validate a gmail address in Java如何在 Java 中验证 gmail 地址
【发布时间】:2012-10-30 02:46:21
【问题描述】:

如何验证给定的 gmail 地址是否有效?

我不是要求一个脚本来检查验证,也不是任何正则表达式。我只需要知道一个人是否在验证框中输入了有效的 gmail 地址。一些代码检查谷歌的数据库,看看它是否是一个有效的 gmail 地址。就像我们注册一个新的 gmail 地址时一样,它会显示一条消息,说 gmail 地址已经存在。如果可以使用一些 Google API for Java 来做到这一点?我想在 GAE 中使用它。

【问题讨论】:

    标签: java google-app-engine validation gmail


    【解决方案1】:

    如果有人将 gmail 地址放在“验证”文本框中,那么我可以使用什么代码来检查 google 的数据库并告诉我这是否是有效 ID?

    我希望没有办法,因为 gmail 不应该竭尽全力让harvest lists of email addresses to spam 变得容易:

    Directory Harvest Attack 或 DHA 是垃圾邮件发送者使用的一种技术,旨在通过暴力破解在域中查找有效/存在的电子邮件地址。该攻击通常通过标准字典攻击的方式进行,其中有效的电子邮件地址是通过使用常见用户名的不同排列的域中的有效电子邮件地址的暴力猜测来找到的。这些攻击对于查找公司的电子邮件地址更有效,因为它们可能具有官方电子邮件别名的标准格式(即 jdoe@example.domain、johnd@example.domain 或 johndoe@example.domain)。

    任何可以让您判断字符串是否是指向真实帐户的 gmail 地址的 API 只会让垃圾邮件发送者更容易向该用户发送垃圾邮件。


    如果不是,那么什么是安全的验证方式?

    向他们发送一封包含 URL 的电子邮件,他们可以单击该 URL 以确认他们拥有该电子邮件地址。

    该链接应包含一个nonce,您将其与电子邮件地址或您已签名的一些信息一起存储在数据库中,以便您知道它来自您。

    这种帐户验证是相当标准的。

    【讨论】:

    • 我喜欢电子邮件验证作为验证电子邮件的一种方式,而无需强制用户登录到谷歌服务。可能要容易得多,具体取决于 OP 需要信息的上下文。
    • @thatidiotguy,是的,它适用于大量不想将其 gmail 帐户用于其他事情的 gmail 用户。一些用户,尤其是年长 (50 岁以上) 的用户,对联合身份系统持怀疑态度。
    猜你喜欢
    • 2011-08-05
    • 1970-01-01
    • 1970-01-01
    • 2015-11-26
    • 2011-10-05
    • 2019-11-14
    • 2019-09-17
    • 2015-05-29
    相关资源
    最近更新 更多