← Cloudflare Ruleset Engine / ruleset-engine / managed-rulesets / override-examples
Включение только выбранных правил
Используйте переопределение набора правил и переопределение правила во входном наборе правил фазы, чтобы выполнить только выбранные правила управляемого набора правил.
- Добавьте правило к входному набору правил фазы, который выполняет управляемый набор правил.
- Настройка переопределения набора правил которое отключает все правила в управляемом наборе правил.
- Настройка переопределения правила чтобы задать действие для правил, которые нужно выполнить.
Пример на уровне зоны
Следующие 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}]задаёт список переопределений на уровне правил, включающих два отдельных правила.
Необходимые разрешения API-токена
Хотя бы одно из следующих права доступа токена требуется:Response Compression WriteConfig Settings WriteDynamic URL Redirects WriteCache Settings WriteCustom Errors WriteOrigin WriteManaged headers WriteZone Transform Rules WriteMass URL Redirects WriteMagic Firewall WriteL4 DDoS Managed Ruleset WriteHTTP DDoS Managed Ruleset WriteSanitize WriteTransform Rules WriteSelect Configuration WriteBot Management WriteZone WAF WriteAccount WAF WriteAccount Rulesets WriteLogs WriteLogs Write
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
}
]
}
}
}
]
}'Пример на уровне аккаунта
Следующие 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}]задаёт список переопределений на уровне правил, включающих два отдельных правила.
Необходимые разрешения API-токена
Хотя бы одно из следующих права доступа токена требуется:Mass URL Redirects WriteMagic Firewall WriteL4 DDoS Managed Ruleset WriteTransform Rules WriteSelect Configuration WriteAccount WAF WriteAccount Rulesets WriteLogs Write
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
}
]
}
}
}
]
}'