本文档简要介绍了 reCAPTCHA 防火墙政策。
reCAPTCHA 防火墙政策是一组与相应条件匹配的规则 属性来保护您的网站免受垃圾内容和滥用行为的侵扰。系统会针对传入流量评估每条规则。这些规则的评估顺序与其评估顺序相同, 。
reCAPTCHA 防火墙政策组件
reCAPTCHA 防火墙政策规则包含以下组成部分:
path
:应用防火墙政策规则的网址路径。例如/login
。condition
:政策条件。政策条件是必须解析为布尔值的 CEL(通用表达式语言)表达式。例如recaptcha.score >= 0.5
。action
:WAF 服务提供商在满足政策条件时必须执行的操作。如需了解详情,请参阅政策相关操作。
当传入的请求与指定路径的政策条件匹配时, 您的 WAF 服务提供商会允许、屏蔽或重定向相应请求, 执行该操作。默认规则是允许访问。
reCAPTCHA 防火墙政策示例
以下示例 reCAPTCHA 防火墙政策包含应用的规则
添加到 login
操作。如果得分低于 0.5,则阻止访问。
policy {
path: login.php
condition: recaptcha.score < 0.5
action: block
}
reCAPTCHA 防火墙政策条件特性
下表列出了可供您使用的 reCAPTCHA 令牌属性 用于定义 reCAPTCHA 防火墙政策中的条件。
属性名称 | 数据类型 | 说明 |
---|---|---|
recaptcha.token.valid |
布尔值 | 收到的令牌是否有效。符合以下条件的令牌有效: 只要不格式不正确或已过期,即使得分较低也是如此。 |
recaptcha.token.action |
字符串 | 生成令牌时提供的操作名称。
仅为 action-token 填充。这是在创建令牌时传递给 grecaptcha.enterprise.execute() 的 action 参数。
有关
相关信息,请参阅操作名称。
|
recaptcha.score |
浮点数 | reCAPTCHA 令牌的得分。有效得分的范围为 0.0 到 1.0。1.0 分表示互动风险低,很可能是合法的,0.0 表示互动风险高,可能具有欺诈性。如需了解详情,请参阅解读得分。 |
recaptcha.assessment_type |
整数 | 所执行的评估类型。assessment_type 会根据随请求传递的 WAF 专用 reCAPTCHA 密钥进行设置。
如需比较 CEL 表达式中的
AssessmentType.ACTION 。
|
http.ip |
字符串 | 传入请求的 IP 地址。 |
http.path |
字符串 | 请求 URI 的路径。 |
http.domain |
字符串 | 所请求 URI 的域名。 |
reCAPTCHA 防火墙政策操作
下表列出了您可以在 reCAPTCHA 防火墙政策规则中指定的各种政策操作:
政策操作 | 说明 | 操作结果 |
---|---|---|
allow |
允许访问请求的网页。 | 传入的用户请求会不间断地传送到您的后端。 |
block |
拒绝访问请求的网页。 | 系统会向用户返回 403(禁止访问)HTTP 错误。 |
redirect |
将传入的用户请求重定向到 reCAPTCHA 质询页面。 | reCAPTCHA 验证页会评估用户请求,并根据评估结果附加 Cookie。之后,系统会将用户请求再次重定向到原始页面。 |
substitute |
针对欺诈性用户请求,提供请求的网页以外的其他网页。 | 在向后端发送请求时,系统会将请求的路径替换为其他路径。用户继续看到原始网址。 |
set_header |
设置自定义标头,并允许传入的用户请求继续 后端。然后,后端可以触发自定义保护。 | 标头将附加到用户请求。您的后端使用此 标头来触发自定义的保护或分析。 |