跳转到内容
搜索文档

创建自定义规则集

最后更新 查看 MarkdownAgent 设置

使用 Rulesets API 创建自定义规则集。 使用 Create an account or zone ruleset 操作创建自定义规则集时,请确保:

  • kind 字段设为 custom
  • phase 字段中指定要创建自定义规则集的 阶段 名称。

你也可以在 rules 数组中指定要包含在自定义规则集中的规则列表。创建自定义规则集后再添加规则,请参阅 向自定义规则集添加规则

如果您正在使用 Terraform,请参阅使用 Terraform 配置 WAF 自定义规则,了解创建和部署自定义规则集的示例。

如果您正在使用 Cloudflare 仪表板,请参阅在仪表板中使用自定义规则集

示例 A - 账户级别的自定义规则集

以下请求在账户级别创建新的自定义规则集。响应将在 id 字段中包含新自定义规则集的 ID。

Required API token permissions

At least one of the following token permissions is required:
  • Mass URL Redirects Write
  • Magic Firewall Write
  • L4 DDoS Managed Ruleset Write
  • Transform Rules Write
  • Select Configuration Write
  • Account WAF Write
  • Account Rulesets Write
  • Logs Write
Create an account rulesetbash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"name": "Custom Ruleset 1",
		"description": "My First Custom Ruleset (account)",
		"kind": "custom",
		"phase": "http_request_firewall_custom"
	}'
{
	"result": {
		"id": "f82ccda3d21f4a02825d3fe45b5e1c10",
		"name": "Custom Ruleset 1",
		"description": "My First Custom Ruleset (account)",
		"kind": "custom",
		"version": "1",
		"last_updated": "2025-08-09T10:27:30.636197Z",
		"phase": "http_request_firewall_custom"
	},
	"success": true,
	"errors": [],
	"messages": []
}

你可以在创建自定义规则集的请求中包含规则列表。如果尚未添加任何规则,请参阅 向自定义规则集添加规则 了解更多信息。

示例 B - zone 级别的自定义规则集

以下请求在 zone 级别创建新的自定义规则集。响应将在 id 字段中包含新自定义规则集的 ID。

Required API token permissions

At least one of the following token permissions is required:
  • Response Compression Write
  • Config Settings Write
  • Dynamic URL Redirects Write
  • Cache Settings Write
  • Custom Errors Write
  • Origin Write
  • Managed headers Write
  • Zone Transform Rules Write
  • Mass URL Redirects Write
  • Magic Firewall Write
  • L4 DDoS Managed Ruleset Write
  • HTTP DDoS Managed Ruleset Write
  • Sanitize Write
  • Transform Rules Write
  • Select Configuration Write
  • Bot Management Write
  • Zone WAF Write
  • Account WAF Write
  • Account Rulesets Write
  • Logs Write
  • Logs Write
Create a zone rulesetbash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"name": "Custom Ruleset 1",
		"description": "My First Custom Ruleset (zone)",
		"kind": "custom",
		"phase": "http_request_firewall_custom"
	}'
{
	"result": {
		"id": "f82ccda3d21f4a02825d3fe45b5e1c10",
		"name": "Custom Ruleset 1",
		"description": "My First Custom Ruleset (zone)",
		"kind": "custom",
		"version": "1",
		"last_updated": "2025-08-09T10:27:30.636197Z",
		"phase": "http_request_firewall_custom"
	},
	"success": true,
	"errors": [],
	"messages": []
}

你可以在创建自定义规则集的请求中包含规则列表。如果尚未添加任何规则,请参阅 向自定义规则集添加规则 了解更多信息。

这篇文档对您有帮助吗?