跳转到内容
搜索文档

向阶段入口点规则集添加规则

最后更新 查看 MarkdownAgent 设置

阶段入口点规则集 包含在该阶段中运行的规则的有序列表。入口点规则集中的规则可以执行不同的规则集。您可以在账户级别和区域级别为每个阶段配置入口点规则集。

要向阶段入口点规则集添加一条或多条规则,请使用 Rulesets API规则集更新操作 之一。当您将规则添加到入口点规则集时,如果该入口点规则集不存在,它会自动被创建。此 API 方法要求您在请求中包含所有想要保留在规则集中的规则,否则它们将被移除。

如果您只向规则集中添加单条规则,请考虑改用 规则创建操作 之一。在这种情况下,请求仅包含新规则的定义。

示例:在区域级别设置阶段入口点规则集的规则

以下示例使用 Update a zone entry point ruleset 操作在区域级别为 http_request_firewall_managed 阶段设置阶段入口点规则集的规则。

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
Update a zone entry point rulesetbash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \
	--request PUT \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"rules": [
				{
						"action": "execute",
						"action_parameters": {
								"id": "<MANAGED_RULESET_ID_1>"
						},
						"expression": "true"
				},
				{
						"action": "execute",
						"action_parameters": {
								"id": "<MANAGED_RULESET_ID_2>"
						},
						"expression": "true"
				}
		]
	}'
{
	"result": {
		"id": "<RULESET_ID>",
		"name": "Default",
		"description": "",
		"kind": "zone",
		"version": "1",
		"rules": [
			{
				"id": "<RULE_ID_1>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID_1>"
				},
				"last_updated": "2021-06-17T15:42:37.917815Z"
			},
			{
				"id": "<RULE_ID_2>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID_2>"
				},
				"last_updated": "2021-06-17T15:42:37.917815Z"
			}
		],
		"last_updated": "2021-06-17T15:42:37.917815Z",
		"phase": "http_request_firewall_managed"
	},
	"success": true,
	"errors": [],
	"messages": []
}

示例:在区域级别向阶段入口点规则集添加单条规则

以下示例使用 Create a zone ruleset rule 操作在区域级别向阶段入口点规则集(ID 为 $RULESET_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 ruleset rulebash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/$RULESET_ID/rules" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"action": "execute",
		"action_parameters": {
				"id": "<MANAGED_RULESET_ID>"
		},
		"expression": "true"
	}'
{
	"result": {
		"id": "<RULESET_ID>",
		"name": "Zone-level phase entry point ruleset",
		"description": "",
		"kind": "root",
		"version": "2",
		"rules": [
			{
				"id": "<EXISTING_RULE_ID>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<ANOTHER_MANAGED_RULESET_ID>"
				},
				"last_updated": "2021-03-17T15:42:37.917815Z"
			},
			{
				"id": "<NEW_RULE_ID>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID>"
				},
				"last_updated": "2021-06-30T15:42:37.917815Z"
			}
		],
		"last_updated": "2021-06-30T15:42:37.917815Z",
		"phase": "http_request_firewall_managed"
	},
	"success": true,
	"errors": [],
	"messages": []
}

这篇文档对您有帮助吗?