reCAPTCHA Enterprise for WAF 与 Google Cloud Armor 集成的功能

reCAPTCHA Enterprise for WAF 和 Google Cloud Armor 集成提供以下功能:reCAPTCHA 验证页面reCAPTCHA 操作令牌reCAPTCHA 会话令牌。本文档可帮助您了解这些功能,并确定哪种功能最适合您的用例。

功能比较

下表显示了 reCAPTCHA 验证页面、reCAPTCHA 操作令牌和 reCAPTCHA 会话令牌的简要比较:

比较类别 reCAPTCHA 质询页面 reCAPTCHA 操作令牌 reCAPTCHA 会话令牌
使用场景 如果您怀疑有垃圾邮件活动定向到您的网站,而您需要筛掉机器人,请使用 reCAPTCHA 质询页面。

此方法会中断用户的活动,因为用户必须验证人机识别系统质询。

使用 reCAPTCHA 操作令牌保护用户操作。 使用 reCAPTCHA 会话令牌保护网站网域上的整个用户会话。
集成类型

集成时,您需要配置 Google Cloud Armor 安全政策规则。

集成时,您需要执行以下操作:

  • 在您网站的各个页面上安装 reCAPTCHA JavaScript。
  • 将操作令牌附加到各个请求标头中。
  • 配置 Google Cloud Armor 安全政策规则。

集成时,您需要执行以下操作:

  • 在您网站的各个页面上安装 reCAPTCHA JavaScript。
  • 配置 Google Cloud Armor 安全政策规则。
检测准确率

该过程涉及重定向到 reCAPTCHA 验证页面,该页面可能不会接收所有页面专用信号。因此,机器人检测可能会不太准确。

最高

操作令牌保护用户操作。

会话令牌保护网站网域上的整个用户会话。

支持的 reCAPTCHA 版本 reCAPTCHA 验证页面使用经过优化的 reCAPTCHA 版本来最大限度地减少集成。 reCAPTCHA Enterprise 基于得分和复选框的网站密钥 reCAPTCHA Enterprise 基于得分的网站密钥

reCAPTCHA 质询页面

您可以使用 reCAPTCHA 质询页面功能将传入的请求重定向到 reCAPTCHA Enterprise,以确定每个请求是否可能具有欺诈或合法性。

这种重定向应用和可能的人机识别系统质询会中断用户的活动。如果您怀疑存在指向您网站的垃圾邮件活动,我们建议您将其用于筛掉机器人。

当最终用户首次访问您的网站时,会发生以下事件:

  1. 用户的请求会重定向到 WAF 层的 reCAPTCHA Enterprise。
  2. reCAPTCHA Enterprise 会返回嵌入了 reCAPTCHA JavaScript 的 HTML 页面。
  3. 呈现页面后,reCAPTCHA Enterprise 会评估用户互动。如有必要,reCAPTCHA Enterprise 会向用户提供人机识别系统验证。
  4. 根据评估结果,reCAPTCHA Enterprise 会执行以下操作:

    1. 如果用户互动通过评估,reCAPTCHA Enterprise 会发出豁免 Cookie。浏览器将此豁免 Cookie 附加到用户的后续网站请求,直到该 Cookie 过期。默认情况下,豁免 Cookie 会在 3 小时后过期。
    2. 如果用户互动未通过评估,reCAPTCHA Enterprise 不会发出豁免 Cookie。
  5. 如果用户使用 GET/HEAD 调用访问网页,reCAPTCHA Enterprise 会使用豁免 Cookie 重新加载网页。如果用户使用 POST/PUT 调用访问网页,则用户需要点击页面上的“重新加载”链接。

  6. Google Cloud Armor 将豁免具有有效豁免 Cookie 的请求,使其不再重定向,并授予对您网站的访问权限。

以下序列图显示了 reCAPTCHA 验证页面工作流:

reCAPTCHA 操作令牌

您可以使用 reCAPTCHA 操作令牌来保护重要的用户互动(例如结账)。

reCAPTCHA 操作令牌工作流包含以下步骤:

  1. 在网页上安装 reCAPTCHA Enterprise 网站密钥。
  2. 当最终用户触发受 reCAPTCHA 保护的 HTML 操作时,该网页会将在浏览器中收集的信号发送到 reCAPTCHA Enterprise 以进行分析。
  3. reCAPTCHA Enterprise 向网页发送操作令牌。
  4. 将此操作令牌附加到您要保护的请求的标头。
  5. 当用户使用操作令牌请求访问权限时,Google Cloud Armor 会解码并验证操作令牌属性,而不是后端应用。
  6. Google Cloud Armor 会根据您配置的安全政策规则应用操作。

以下序列图显示了 reCAPTCHA 操作令牌工作流程:

reCAPTCHA 操作令牌特性

下表列出了 reCAPTCHA 操作令牌的特性集:

特性名称 数据类型 说明
score float reCAPTCHA 令牌的得分。有效得分的范围为 0.0 到 1.0。1.0 分表示互动风险低,很可能是合法的,0.0 表示互动风险高,可能具有欺诈性。如需了解详情,请参阅解读得分
captcha_status 字符串 reCAPTCHA 令牌中的人机识别系统状态。以下是三种可能的状态:
  • 评估用户时未涉及质询。
  • 涉及了质询,用户采用了正确的解决方法。
  • 涉及了质询,用户未能解决这些问题。
action_name 字符串 action_name 是您在调用 grecaptcha.enterprise.execute() 时为用户互动指定的操作参数。如需了解详情,请参阅操作名称

reCAPTCHA 会话令牌

如果要保护网站网域上的整个用户会话,您可以使用 reCAPTCHA 会话令牌。借助会话令牌,您可以重复使用指定时间段内的现有 reCAPTCHA Enterprise 评估,从而无需对特定用户进行进一步评估,从而减少用户摩擦力并减少所需的 reCAPTCHA 调用总数。

为了让 reCAPTCHA Enterprise 能够了解最终用户的浏览模式,我们建议您在网站的所有网页上使用 reCAPTCHA 会话令牌。

reCAPTCHA 会话令牌工作流包括以下步骤:

  1. 您在至少一个网页上安装了基于 reCAPTCHA Enterprise 得分的网站密钥。
  2. 浏览器从 reCAPTCHA Enterprise 加载 reCAPTCHA JavaScript。
  3. 在评估后,reCAPTCHA JavaScript 会在最终用户的浏览器上将会话令牌设置为 Cookie。
  4. 只要 reCAPTCHA JavaScript 保持活跃状态,最终用户的浏览器就会每 30 分钟存储一次 Cookie 和 reCAPTCHA JavaScript。
  5. 当用户使用 Cookie 请求访问权限时,Google Cloud Armor 会根据安全政策规则验证此 Cookie 并应用操作。

以下序列图显示了 reCAPTCHA 会话令牌工作流程:

reCAPTCHA 会话令牌特性

下表列出了 reCAPTCHA 会话令牌的特性:

特性名称 数据类型 说明
Score float reCAPTCHA 令牌的得分。有效得分的范围为 0.0 到 1.0。1.0 分表示互动风险低,很可能是合法的,0.0 表示互动风险高,可能具有欺诈性。如需了解详情,请参阅解读得分

后续步骤

  • 了解如何实现 reCAPTCHA Enterprise for WAF 与 Google Cloud Armor 集成的功能