reCAPTCHA 防火墙政策示例

本文档举例说明了您可以执行的操作的 reCAPTCHA 防火墙政策 是基于 reCAPTCHA WAF 功能的实现创建的。

示例 1:包含操作令牌的 reCAPTCHA 防火墙政策

您可以添加 reCAPTCHA 操作令牌来保护用户操作(例如登录)。 为了确保系统会在用户访问 启动登录操作,集成 reCAPTCHA 操作令牌脚本 首页。

使用以下规则创建 reCAPTCHA 防火墙政策:

  • 必须应用规则的路径。在此示例中为 login.php
  • 如果操作令牌的操作名称属性与用户不匹配 或得分小于或等于 0.1 时, 然后阻止访问
  gcloud recaptcha firewall-policies create \
      --description="example1 policy" \
      --path="/login.php" \
      --condition="recaptcha.token.action != "login" || recaptcha.score <= 0.1" \
      --actions="block"

下图显示了使用 reCAPTCHA 操作令牌的工作流 功能以及相应的 reCAPTCHA 防火墙政策:

示例 2:包含会话令牌的 reCAPTCHA 防火墙政策

您可以在用户可能会访问的页面(例如结账页)中添加 reCAPTCHA 会话令牌,以便定期刷新 Cookie。集成 reCAPTCHA 会话令牌脚本,以便 reCAPTCHA Cookie 在应用后端发出并刷新 进入结账页。在结账页上,集成 reCAPTCHA 会话令牌脚本,以便在应用后端颁发和刷新 reCAPTCHA Cookie,以防止 Cookie 过期。

使用以下规则创建 reCAPTCHA 防火墙政策:

  • 必须应用规则的路径。在此示例中为 checkout.html
  • 如果得分低于或等于 0.1,则禁止访问。
   gcloud recaptcha firewall-policies create \
       --description="example2 policy" \
       --path="/checkout.html" \
       --condition="recaptcha.score <=0.1" \
       --actions="block"

下图显示了使用 reCAPTCHA 的工作流 会话令牌功能和相应的 reCAPTCHA 防火墙政策:

示例 3:包含质询页面的 reCAPTCHA 防火墙政策

如果您希望用户 重定向到一个插页,并在这里确定用户请求 涉嫌欺诈或合法。

对于要保护的网页,请创建 reCAPTCHA 防火墙政策规则,以将用户重定向到质询页面:

  • 对于受保护的页面,如果令牌无效,则将用户重定向到质询页面。在此示例中为 index.html
  • 如果得分小于或等于 0.1,则将用户重定向到该错误 页面。

     gcloud recaptcha firewall-policies create \
         --description="example3-1 policy" \
         --path="/index.html" --condition="!recaptcha.token.valid" --actions="redirect"
    
     gcloud recaptcha firewall-policies create \
         --description="example3-2 policy" \
         --path="/index.html" --condition="recaptcha.score <= 0.1" --actions="substitute { path: /bot_error }"
    

下图显示了使用 reCAPTCHA 验证的工作流 页面功能和相应的 reCAPTCHA 防火墙政策:

示例 4:具有操作令牌和验证页面的 reCAPTCHA 防火墙政策

如果您想使用 reCAPTCHA WAF 的多项功能, 为各个网页设置不同的保护级别例如,您可以在某个网页上使用操作令牌或会话令牌功能,通过 reCAPTCHA 得分来评估传入流量,并在您希望确保用户不是机器人的网页上使用质询页面功能。

您可以添加 reCAPTCHA 操作令牌以保护用户操作,例如登录。确保在用户发起登录时发出 reCAPTCHA Cookie 将 reCAPTCHA 操作令牌脚本集成到页面上,然后再 受保护的登录操作。例如,首页。在下载页面上, 将用户重定向到质询页面,请使用 reCAPTCHA 防火墙政策规则。

创建包含以下规则的 reCAPTCHA 防火墙政策:

  • 必须应用规则的路径。在此示例中为 login.php
  • 如果操作令牌的操作名称属性与受保护的用户操作不匹配,或者评估类型不是 ACTION,或者得分低于或等于 0.1,则阻止访问。
  • 如需在用户需要下载内容时将其重定向到挑战页面, 添加防火墙政策规则以重定向用户。
  • 得分小于或等于 0.1,或者评估类型不是 CHALLENGEPAGE,然后将用户重定向到错误页面。
    gcloud recaptcha firewall-policies create --description="example4-1 policy"
        --path="/login.php" --condition="recaptcha.token.action != "login" || recaptcha.assessment_type != AssessmentType.ACTION || recaptcha.score <= 0.1" --actions="block"
    gcloud recaptcha firewall-policies create --description="example4-2 policy"
        --path="/content/example.pdf" --condition="recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="redirect"
    gcloud recaptcha firewall-policies create --description="example4-3 policy"
        --path="/content/example.pdf" --condition="recaptcha.score <= 0.1 || recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="substitute { path: /bot_error }"

下图显示了使用 reCAPTCHA 操作令牌的工作流 和 reCAPTCHA 验证页面功能,以及对应的 reCAPTCHA 防火墙政策:

示例 5:具有 WAF 极速保护和验证页面的 reCAPTCHA 防火墙政策

您可以根据需要添加 reCAPTCHA WAF express protection 功能 在不影响用户的情况下评估用户互动,然后 如果得分较低,则将用户重定向到挑战页面。例如: 您需要阻止流向目录页面的流量

使用以下规则创建 reCAPTCHA 防火墙政策:

  • 必须应用规则的路径。
  • 如果得分小于或等于 0.3,则将用户重定向到 挑战页面。

以下示例创建了一条 reCAPTCHA 防火墙政策,用于在得分低于 0.3 时重定向目标为 /catalog1/itemlist.html 的流量。

    gcloud recaptcha firewall-policies create \
        --description="example5 policy" \
        --path="/catalog1/itemlist.html" \
        --condition="recaptcha.score <= 3" \
        --actions="redirect"

后续步骤