创建 reCAPTCHA 防火墙政策规则

本文档介绍了如何创建 reCAPTCHA 防火墙政策规则。

准备工作

您必须创建防火墙政策,为网站上要保护的每个网页指定规则。您可以创建包含 reCAPTCHA for WAF 的一项或多项功能的防火墙政策。

在 reCAPTCHA 防火墙政策中,按预期优先级顺序添加规则。第一条规则的顺序最高。您还可以使用 ReorderFirewallPoliciesRequest 重新排序优先级。 对于传入的请求,当政策条件与指定路径匹配时,WAF 服务提供商会实现已定义的操作,并且不会评估后续规则。

  1. 根据您选择的功能,执行以下操作:
    • 确定要保护的路径。
    • 确定允许、重定向或阻止访问的条件。
    • 确定规则的优先次序。
  2. 了解防火墙政策组件及其属性
  3. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  4. 如需替换 gcloud CLI 以访问 reCAPTCHA API 的公开预览版,请运行以下命令:
        gcloud config set api_endpoint_overrides/recaptchaenterprise https://public-preview-recaptchaenterprise.googleapis.com/
        
  5. 如需创建 reCAPTCHA 防火墙政策,请使用 gcloud recaptcha firewall-policies create 命令:

    在 reCAPTCHA 防火墙政策中,按预期优先级顺序添加规则。您必须先添加优先级最高的规则。对于传入的请求,当政策条件与指定路径匹配时,WAF 服务提供商会实现已定义的操作,并且不会评估后续规则。默认规则是允许访问。

       gcloud recaptcha firewall-policies create \
          --actions=ACTION \
          --condition=CONDITION \
          --description=DESCRIPTION \
          --path=PATH
      

    请提供以下值:

    • ACTION:WAF 服务提供商必须针对传入请求采取的操作。它可以包含最多一个终端操作,即强制执行响应的操作。 指定以下操作之一:
      • allow:允许访问所请求的网页。这是一项终止操作。
      • block:拒绝访问所请求的网页。这是一项终止操作。
      • redirect:将传入的用户请求重定向到 reCAPTCHA 验证页面。 这是一项终止操作。
      • substitute:针对欺诈性用户请求提供不同于所请求页面的其他页面。这是一项终止操作。
      • set_header:设置自定义标头,并允许传入的用户请求继续发送到后端。然后,后端可以触发自定义保护。此操作为非终止操作。
    • CONDITION:一个 CEL(通用表达式语言)条件表达式,用于指定 reCAPTCHA 防火墙政策是否适用于传入的用户请求。如果此条件的评估结果为 true,且所请求的路径与路径模式匹配,则 WAF 服务提供商会执行关联的操作。创建时,系统会检查条件字符串的 CEL 语法是否正确。如需详细了解语言定义,请参阅 CEL 语言定义
    • DESCRIPTION:reCAPTCHA 防火墙政策旨在实现的目标的说明。说明不得超过 256 个 UTF-8 字符。
    • PATH:reCAPTCHA 防火墙政策适用的路径。 必须以 glob 模式指定。如需详细了解 glob,请参阅手册页面

    成功执行该命令后,系统会显示类似于以下内容的输出:

         Created [100].
       

    以下示例创建了一个 reCAPTCHA 防火墙政策,用于在得分低于 0.1 时阻止目标为 /example/page.html 的流量。

       gcloud recaptcha firewall-policies create \
         --description="example policy" \
         --path="/example/page.html" \
         --condition="recaptcha.score < 0.1" \
         --actions="block"
       

后续步骤