与 WAF 服务提供商集成的功能

本文档可帮助您了解 reCAPTCHA Enterprise for WAF 的功能,并确定哪项功能最符合您的使用场景。

reCAPTCHA Enterprise for WAF 提供以下功能,可用于与 Web 应用防火墙 (WAF) 服务提供商集成:

功能概览

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

比较类别 reCAPTCHA 操作令牌 reCAPTCHA 会话令牌 reCAPTCHA 质询页面 reCAPTCHA WAF express protection
使用场景 使用 reCAPTCHA 操作令牌来保护用户操作,例如登录评论帖子 使用 reCAPTCHA 会话令牌保护网站网域上的整个用户会话。 如果您怀疑有人向您的网站提供了垃圾内容活动,并且需要过滤掉漫游器,请使用 reCAPTCHA 验证页面。

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

如果您的环境不支持集成 reCAPTCHA JavaScript 或移动 SDK,请使用 reCAPTCHA WAF express protection 功能。
支持的平台 网站和移动应用 网站 网站 API、网站、移动应用以及电视和游戏机等 IoT 设备
集成工作量

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

  • 在您网站的各个页面上安装 reCAPTCHA JavaScript,或在移动应用上安装 reCAPTCHA Enterprise 移动 SDK。
  • 将操作令牌附加到各个请求标头中。
  • 为第三方 WAF 服务提供商配置 Google Cloud Armor 安全政策规则或 reCAPTCHA 防火墙政策。

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

  • 在您网站的各个页面上安装 reCAPTCHA JavaScript。
  • 为第三方 WAF 服务提供商配置 Google Cloud Armor 安全政策规则或 reCAPTCHA 防火墙政策。

集成要求您为 Google Cloud Armor 配置安全政策规则,或为第三方 WAF 服务提供商配置 reCAPTCHA 防火墙政策。

集成要求您通过 WAF 服务提供商配置 reCAPTCHA WAF express protection,或者从您的应用服务器向 reCAPTCHA Enterprise 发出请求。

检测准确率 最高

操作令牌可保护各项用户操作。

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

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

客户端信号不可用。

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

您可以在一个应用中使用 reCAPTCHA Enterprise for WAF 的一项或多项功能。例如,您可以选择为所有页面应用会话令牌,并根据会话令牌的得分将可疑请求重定向到 reCAPTCHA 验证页面。此外,您还可以使用操作令牌执行重要操作,例如结账。如需了解详情,请参阅示例

reCAPTCHA 操作令牌

您可以使用 reCAPTCHA 操作令牌来保护重要的用户互动,例如在网页和移动应用上结账。

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

  1. 当最终用户触发受 reCAPTCHA Enterprise 保护的操作时,网页或移动应用会将浏览器中收集的信号发送到 reCAPTCHA Enterprise 进行分析。
  2. reCAPTCHA Enterprise 会向网页或移动应用发送操作令牌。
  3. 将此操作令牌附加到要保护的请求的标头。
  4. 当最终用户使用操作令牌请求访问权限时,WAF 服务提供商会解码并验证操作令牌属性,而不是您的后端应用。
  5. WAF 服务提供商会根据您配置的安全政策规则或防火墙政策规则(如适用)来应用操作。

以下序列图显示了适用于网站的 reCAPTCHA 操作令牌工作流:

Google Cloud Armor

第三方 WAF 服务提供商

以下序列图显示了适用于移动应用的 reCAPTCHA 操作令牌工作流:

reCAPTCHA 会话令牌

如果您希望保护网站网域中的整个用户会话,可以使用 reCAPTCHA 会话令牌。通过会话令牌,您可以在指定的时间段内重复使用现有的 reCAPTCHA Enterprise 评估。这样一来,特定用户无需进一步评估,便可减少用户操作障碍,并减少所需的 reCAPTCHA 调用总数。

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

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

  1. 浏览器从 reCAPTCHA Enterprise 加载 reCAPTCHA JavaScript。
  2. 在评估后,reCAPTCHA JavaScript 会在最终用户的浏览器上将会话令牌设置为 Cookie。
  3. 只要 reCAPTCHA JavaScript 保持活跃状态,最终用户的浏览器就会每 30 分钟存储一次 Cookie 和 reCAPTCHA JavaScript。
  4. 当用户使用 Cookie 请求访问权限时,WAF 服务提供商会验证此 Cookie,并根据安全政策规则或防火墙规则规则应用操作。

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

Google Cloud Armor

第三方 WAF 服务提供商

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. WAF 服务提供商豁免具有有效豁免 Cookie 的请求,不会被再次重定向,并授予对您网站的访问权限。

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

Google Cloud Armor

第三方 WAF 服务提供商

reCAPTCHA WAF express protection

在不支持运行 reCAPTCHA JavaScript 或原生移动 SDK 的环境(例如,IoT 设备和机顶盒)中,您可以使用 reCAPTCHA WAF express protection 功能 (reCAPTCHA WAF Express) 来保护您的应用。您可以使用 WAF 服务提供商在 WAF 层设置 reCAPTCHA WAF Express,也可以在应用服务器上的独立环境中设置。reCAPTCHA WAF Express 仅使用后端信号生成 reCAPTCHA 风险评分。

reCAPTCHA WAF Express 工作流包含以下步骤:

  1. 当用户请求访问网页时,WAF 服务提供商或应用服务器会创建向 reCAPTCHA Enterprise 发送的评估请求。
  2. reCAPTCHA Enterprise 会评估用户互动情况并发送风险评分。
  3. WAF 服务提供商或应用服务器根据风险评分允许或阻止访问。

以下序列图显示了 reCAPTCHA WAF Express 工作流:

后续步骤