← Правила Cloudflare / rules / transform / managed-transforms
Настройка Managed Transforms
-
В панели управления Cloudflare перейдите в раздел Rules Настройки страницу.
Перейдите в Настройки ↗ -
В Managed Transforms вкладке включите или отключите нужные Managed Transforms с помощью переключателя рядом с каждой записью. Некоторые Managed Transforms могут быть недоступны в вашем плане Cloudflare или в рамках подписки на продукты.
1. Получение списка доступных Managed Transforms
Актуальный статус и доступность Managed Transform можно проверить с помощью Список Managed Transforms операцию.
Следующий пример запроса получает список доступных Managed Transforms, сгруппированных по запросу или ответу, с информацией об их текущем статусе (enabled поле) и можно ли их обновить, на основании конфликтов с другими включёнными Managed Transforms (has_conflict поле).
Каждый элемент Managed Transform может дополнительно содержать conflicts_with массив, сообщающий о любых Managed Transforms, которые будут конфликтовать с текущим Managed Transform при включении.
В ответ войдут только те Managed Transforms, которые доступны в рамках вашего тарифного плана Cloudflare и подключенных продуктов.
Необходимые разрешения API-токена
Хотя бы одно из следующих права доступа токена требуется:Response Compression WriteResponse Compression ReadConfig Settings WriteConfig Settings ReadDynamic URL Redirects WriteDynamic URL Redirects ReadCache Settings WriteCache Settings ReadCustom Errors WriteCustom Errors ReadOrigin WriteOrigin ReadManaged headers WriteManaged headers ReadZone Transform Rules WriteZone Transform Rules ReadMass URL Redirects WriteMass URL Redirects ReadMagic Firewall WriteMagic Firewall ReadL4 DDoS Managed Ruleset WriteL4 DDoS Managed Ruleset ReadHTTP DDoS Managed Ruleset WriteHTTP DDoS Managed Ruleset ReadSanitize WriteSanitize ReadTransform Rules WriteTransform Rules ReadSelect Configuration WriteSelect Configuration ReadBot Management WriteBot Management ReadZone WAF WriteZone WAF ReadAccount WAF WriteAccount WAF ReadAccount Rulesets ReadAccount Rulesets WriteLogs WriteLogs ReadLogs WriteLogs Read
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/managed_headers" \
--request GET \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"{
"result": {
"managed_request_headers": [
{
"enabled": false,
"has_conflict": false,
"id": "add_bot_protection_headers"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_client_certificate_headers"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_visitor_location_headers"
},
{
"conflicts_with": ["remove_visitor_ip_headers"],
"enabled": false,
"has_conflict": false,
"id": "add_true_client_ip_headers"
},
{
"conflicts_with": ["add_true_client_ip_headers"],
"enabled": false,
"has_conflict": false,
"id": "remove_visitor_ip_headers"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_waf_credential_check_status_header"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_waf_content_scan_status_header"
}
],
"managed_response_headers": [
{
"enabled": false,
"has_conflict": false,
"id": "remove_x-powered-by_header"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_security_headers"
}
]
},
"success": true,
"errors": [],
"messages": []
}2. Изменение статуса Managed Transforms
Измените статус нужные Managed Transforms с помощью Обновление статуса Managed Transforms операцию.
Добавьте в тело запроса Managed Transforms, которые нужно изменить, и обновите их статус в enabled поле. Вы не можете включить Managed Transform, который конфликтует с уже включённым Managed Transform (то есть элементом, где has_conflict это true).
Убедитесь, что обновляемые Managed Transforms указаны в правильном объекте JSON (managed_request_headers или managed_response_headers).
В ответ войдут все доступные Managed Transforms и их новый статус после обновления.
Необходимые разрешения 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/managed_headers" \
--request PATCH \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"managed_request_headers": [
{
"id": "add_visitor_location_headers",
"enabled": true
}
],
"managed_response_headers": [
{
"id": "remove_x-powered-by_header",
"enabled": true
}
]
}'{
"result": {
"managed_request_headers": [
{
"enabled": false,
"has_conflict": false,
"id": "add_bot_protection_headers"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_client_certificate_headers"
},
{
"enabled": true,
"has_conflict": false,
"id": "add_visitor_location_headers"
},
{
"conflicts_with": ["remove_visitor_ip_headers"],
"enabled": false,
"has_conflict": false,
"id": "add_true_client_ip_headers"
},
{
"conflicts_with": ["add_true_client_ip_headers"],
"enabled": false,
"has_conflict": false,
"id": "remove_visitor_ip_headers"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_waf_credential_check_status_header"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_waf_content_scan_status_header"
}
],
"managed_response_headers": [
{
"enabled": true,
"has_conflict": false,
"id": "remove_x-powered-by_header"
},
{
"enabled": false,
"has_conflict": false,
"id": "add_security_headers"
}
]
},
"success": true,
"errors": [],
"messages": []
}Необходимые разрешения API-токена
Все перечисленные ниже права доступа токена обязательны:
Managed headers WriteAccount Rulesets Read
Настройте cloudflare_managed_transforms ↗ ресурс:
resource "cloudflare_managed_transforms" "tf_example" {
zone_id = var.cloudflare_zone_id
managed_request_headers = [{
id = "add_visitor_location_headers"
enabled = true
}]
managed_response_headers = [{
id = "remove_x-powered-by_header"
enabled = true
}]
}resource "cloudflare_managed_headers" "tf_example" {
zone_id = "<ZONE_ID>"
managed_request_headers {
id = "add_visitor_location_headers"
enabled = true
}
managed_response_headers {
id = "remove_x-powered-by_header"
enabled = true
}
}Убедитесь, что обновляемые Managed Transforms указаны в правильном объекте (managed_request_headers или managed_response_headers).