INTEGRITY Документация

Добавьте правила во входные наборы правил фазы

A входной набор правил фазы содержит упорядоченный список правил, которые выполняются на этой фазе. Правило во входном наборе правил может запускать другой набор правил. Входные наборы правил можно создавать для каждой фазы как на уровне учётной записи, так и на уровне зоны.

Чтобы добавить одно или несколько правил в набор правил точки входа фазы, используйте один из операции обновления набора правил из Rulesets API. При добавлении правила в набор правил точки входа этот набор правил создается автоматически, если он еще не существует. Этот метод API требует включить в запрос все правила, которые нужно сохранить в наборе правил, иначе они будут удалены.

Если вы добавляете в набор правил одно правило, рассмотрите использование одного из операции создания правил вместо этого. В этом случае запрос содержит только определение нового правила.

Пример: настройка правил набора правил точки входа фазы на уровне зоны

Следующий пример задаёт правила набора правил точки входа фазы на уровне зоны для http_request_firewall_managed фазу с помощью Обновление набора правил точки входа зоны операцию.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Обновление набора правил точки входа зоны
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": []
}

Пример: добавление одного правила в набор правил точки входа фазы на уровне зоны

В следующем примере одно правило добавляется в набор правил точки входа фазы (с ID $RULESET_ID) на уровне зоны с помощью Создание правила набора правил зоны операцию.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Создание правила набора правил зоны
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": []
}