本文档举例说明了您可以执行的操作的 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"