跳转到内容
搜索文档

JSON 对象

最后更新 查看 MarkdownAgent 设置

本页包含可编程流防护 API 中使用的 JSON 对象示例。

程序 (Program)

{
  "id": "31c70c65-9f81-4669-94ed-1e1e041e7b06",
  "name": "rate-limiter",
  "status": "success",
  "created_on": "2024-01-01T13:06:04.721954+01:00",
  "modified_on": "2024-01-01T13:06:04.721954+01:00"
}
字段 描述
id 程序的唯一标识符。
name 程序的名称,源自上传的文件名。
status 编译和校验状态。为 successfailed 之一。状态为 failed 且处于非活动状态达到 30 天的程序将被自动删除。
created_on 程序创建时的时间戳。
modified_on 程序上次修改时的时间戳。

规则 (Rule)

{
  "id": "20b99eb6-8b48-48dd-a5b9-a995a0843b57",
  "program_id": "31c70c65-9f81-4669-94ed-1e1e041e7b06",
  "scope": "region",
  "name": "WEUR",
  "mode": "enabled",
  "expression": "ip.dst in { 192.0.2.0/24 }",
  "created_on": "2024-01-01T13:10:38.762503+01:00",
  "modified_on": "2024-01-01T13:10:38.762503+01:00"
}
字段 描述
id 规则的唯一标识符。
program_id 此规则执行的程序的 ID。
scope 规则的范围。必须是 globalregiondatacenter 之一。
name 对于 global 范围,使用 global。对于 regiondatacenter 范围,提供对应的区域代码或数据中心代码。
mode 规则模式。必须是 enableddisabledmonitoring 之一。
expression 用于过滤该规则适用于哪些数据包的 Rules 语言表达式。可选。
created_on 规则创建时的时间戳。
modified_on 规则上次修改时的时间戳。

范围 (Scope)

scope 字段决定了规则在哪里执行:

  • global — 规则在所有 Cloudflare 位置执行。每个账户只能创建一条全局规则。
  • region — 规则在指定区域内的所有 Cloudflare 位置执行。
  • datacenter — 规则仅在指定的 Cloudflare 数据中心执行。

当有多个规则与同一个数据包匹配时,将执行具有最具体范围的规则。数据中心范围的规则优先级高于区域范围的规则,后者优先级高于全局规则。

模式 (Mode)

mode 字段决定了规则的行为方式:

  • enabled — 程序运行,并且其裁定(通过或丢弃)应用于数据包。
  • disabled — 规则处于非活动状态,程序不运行。
  • monitoring — 程序运行,但无论程序的裁定如何,数据包绝不会被丢弃。在启用程序之前,可以使用此模式对其进行测试。

表达式 (Expression)

expression 字段是一个最长 8,192 个字符的 Rules 语言表达式。该表达式过滤了此规则适用于哪些数据包。程序仅处理匹配该表达式的数据包。

支持的字段:

  • ip.src
  • ip.dst
  • udp.srcport
  • udp.dstport

如果该表达式为空或省略,则规则适用于其范围内的所有 UDP 数据包。

有关规则设置的更多信息,请参阅规则设置

这篇文档对您有帮助吗?