跳转到内容
搜索文档

配置 Managed Transforms

最后更新 查看 MarkdownAgent 设置

了解如何配置 Managed Transforms。

  1. 在 Cloudflare 仪表板中,转到 Rules Settings 页面。

    Go to Settings ↗
  2. Managed Transforms(托管转换) 选项卡中,通过选择每项旁边的开关来启用或禁用所需的 Managed Transforms。某些 Managed Transforms 可能在你的 Cloudflare 套餐或产品订阅中不可用。

1. 获取可用的 Managed Transforms 列表

使用 List Managed Transforms 操作检查 Managed Transform 的当前状态和可用性。

以下示例请求获取可用 Managed Transforms 的列表(按请求或响应组织),并包含其当前状态(enabled 字段)以及你是否可以更新它们的信息(基于与其他已启用 Managed Transforms 的冲突,has_conflict 字段)。

每个 Managed Transform 项可选包含一个 conflicts_with 数组,用于告知你在启用时会与当前 Managed Transform 发生冲突的任何 Managed Transforms。

响应将仅包含根据你的 Cloudflare 套餐和产品订阅可用的 Managed Transforms。

Required API token permissions

At least one of the following token permissions is required:
  • Response Compression Write
  • Response Compression Read
  • Config Settings Write
  • Config Settings Read
  • Dynamic URL Redirects Write
  • Dynamic URL Redirects Read
  • Cache Settings Write
  • Cache Settings Read
  • Custom Errors Write
  • Custom Errors Read
  • Origin Write
  • Origin Read
  • Managed headers Write
  • Managed headers Read
  • Zone Transform Rules Write
  • Zone Transform Rules Read
  • Mass URL Redirects Write
  • Mass URL Redirects Read
  • Magic Firewall Write
  • Magic Firewall Read
  • L4 DDoS Managed Ruleset Write
  • L4 DDoS Managed Ruleset Read
  • HTTP DDoS Managed Ruleset Write
  • HTTP DDoS Managed Ruleset Read
  • Sanitize Write
  • Sanitize Read
  • Transform Rules Write
  • Transform Rules Read
  • Select Configuration Write
  • Select Configuration Read
  • Bot Management Write
  • Bot Management Read
  • Zone WAF Write
  • Zone WAF Read
  • Account WAF Write
  • Account WAF Read
  • Account Rulesets Read
  • Account Rulesets Write
  • Logs Write
  • Logs Read
  • Logs Write
  • Logs Read
List Managed Transformsbash
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 的状态

使用 Update status of Managed Transforms 操作更改所需 Managed Transforms 的状态。

将你希望更改的 Managed Transforms 添加到请求正文,并在 enabled 字段中更新其状态。你无法启用与当前已启用的 Managed Transform 存在冲突的 Managed Transform(即 has_conflicttrue 的项)。

请确保将你正在更新的 Managed Transforms 包含在正确的 JSON 对象中(managed_request_headersmanaged_response_headers)。

响应将包含所有可用的 Managed Transforms 及其更新后的新状态。

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 Managed Transformsbash
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 Write
  • Account 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_request_headersmanaged_response_headers)中包含您要更新的托管转换(Managed Transforms)。

这篇文档对您有帮助吗?