跳转到内容
搜索文档

仅启用所选规则

最后更新 查看 MarkdownAgent 设置

在阶段入口点规则集中使用规则集覆盖和规则覆盖,以便仅执行托管规则集中的所选规则。

  1. 添加规则到一个执行托管规则集的阶段入口点规则集。
  2. 配置规则集覆盖,禁用托管规则集中的所有规则。
  3. 配置规则覆盖,为您想要执行的规则设置操作。

区域(Zone)级别示例

以下 PUT 请求使用更新区域入口点规则集操作定义了一项配置,该配置仅执行 http_request_firewall_managed 阶段托管规则集中的两条规则。

在本示例中:

  • "id": "<MANAGED_RULESET_ID>" 定义了要为指定区域($ZONE_ID)中的请求执行的托管规则集。
  • "enabled": false 在规则集级别定义了一个覆盖,以禁用托管规则集中的所有规则。
  • "rules": [{"id": "<RULE_ID_1>", "action": "block", "enabled": true}, {"id": "<RULE_ID_2>", "action": "log", "enabled": true}] 定义了一个规则级别的覆盖列表,以启用两条单独的规则。

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",
						"expression": "true",
						"action_parameters": {
								"id": "<MANAGED_RULESET_ID>",
								"overrides": {
										"enabled": false,
										"rules": [
												{
														"id": "<RULE_ID_1>",
														"action": "block",
														"enabled": true
												},
												{
														"id": "<RULE_ID_2>",
														"action": "log",
														"enabled": true
												}
										]
								}
						}
				}
		]
	}'

账户(Account)级别示例

以下 PUT 请求使用更新账户入口点规则集操作定义了一项配置,该配置仅执行 http_request_firewall_managed 阶段托管规则集中的两条规则。

在本示例中:

  • "id": "<MANAGED_RULESET_ID>" 定义了要为寻址到 example.com 的请求执行的托管规则集。
  • "enabled": false 在规则集级别定义了一个覆盖,以禁用托管规则集中的所有规则。
  • "rules": [{"id": "<RULE_ID_1>", "action": "block", "enabled": true}, {"id": "<RULE_ID_2>", "action": "log", "enabled": true}] 定义了一个规则级别的覆盖列表,以启用两条单独的规则。

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
Update an account entry point rulesetbash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \
	--request PUT \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"rules": [
				{
						"action": "execute",
						"expression": "cf.zone.name eq \"example.com\" and cf.zone.plan eq \"ENT\"",
						"action_parameters": {
								"id": "<MANAGED_RULESET_ID>",
								"overrides": {
										"enabled": false,
										"rules": [
												{
														"id": "<RULE_ID_1>",
														"action": "block",
														"enabled": true
												},
												{
														"id": "<RULE_ID_2>",
														"action": "log",
														"enabled": true
												}
										]
								}
						}
				}
		]
	}'

这篇文档对您有帮助吗?