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

Просмотр наборов правил

На этой странице приведены примеры следующих операций API:

Просмотр доступных наборов правил

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

Список конечных точек API см. в Список и просмотр наборов правил.

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

Ответ на GET-запрос получение списка наборов правил на уровне зоны включает следующие наборы правил:

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

Хотя бы одно из следующих права доступа токена требуется:
Список наборов правил зоны
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": [
		{
			"id": "<ZONE_PHASE_RULESET_ID>",
			"name": "Zone-level Ruleset 1",
			"description": "Ruleset for http_request_firewall_managed phase at the zone level",
			"kind": "zone",
			"version": "2",
			"last_updated": "2021-03-12T14:11:59.754817Z",
			"phase": "http_request_firewall_managed"
		},
		{
			"id": "<CLOUDFLARE_MANAGED_RULESET_ID>",
			"name": "Cloudflare Managed Ruleset",
			"description": "Created by the Cloudflare security team, this ruleset is designed to provide fast and effective protection for all your applications. It is frequently updated to cover new vulnerabilities and reduce false positives",
			"kind": "managed",
			"version": "2",
			"last_updated": "2021-03-18T14:42:40.972022Z",
			"phase": "http_request_firewall_managed"
		},
		{
			"id": "<CLOUDFLARE_OWASP_CORE_RULESET_ID>",
			"name": "Cloudflare OWASP Core Ruleset",
			"description": "Cloudflare's implementation of the Open Web Application Security Project (OWASP) ModSecurity Core Rule Set. We routinely monitor for updates from OWASP based on the latest version available from the official code repository",
			"kind": "managed",
			"version": "3",
			"last_updated": "2021-03-18T14:42:42.993211Z",
			"phase": "http_request_firewall_managed"
		}
	],
	"success": true,
	"errors": [],
	"messages": []
}

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

Ответ на GET-запрос получение списка наборов правил на уровне аккаунта включает следующие наборы правил:

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

Хотя бы одно из следующих права доступа токена требуется:
Список наборов правил аккаунта
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": [
		{
			"id": "<CUSTOM_RULESET_ID>",
			"name": "Custom Ruleset 1",
			"description": "My custom ruleset",
			"kind": "custom",
			"version": "10",
			"last_updated": "2020-11-23T11:36:24.192361Z",
			"phase": "http_request_firewall_custom"
		},
		{
			"id": "<ACCOUNT_PHASE_RULESET_ID>",
			"name": "Account-level ruleset for http_request_firewall_managed phase",
			"description": "Account-level ruleset for executing one or more Managed Rulesets",
			"kind": "root",
			"version": "2",
			"last_updated": "2021-03-12T14:06:41.323932Z",
			"phase": "http_request_firewall_managed"
		},
		{
			"id": "<CLOUDFLARE_MANAGED_RULESET_ID>",
			"name": "Cloudflare Managed Ruleset",
			"description": "Created by the Cloudflare security team, this ruleset is designed to provide fast and effective protection for all your applications. It is frequently updated to cover new vulnerabilities and reduce false positives",
			"kind": "managed",
			"version": "5",
			"last_updated": "2021-03-18T14:42:40.972022Z",
			"phase": "http_request_firewall_managed"
		},
		{
			"id": "<CLOUDFLARE_OWASP_CORE_RULESET_ID>",
			"name": "Cloudflare OWASP Core Ruleset",
			"description": "Cloudflare's implementation of the Open Web Application Security Project (OWASP) ModSecurity Core Rule Set. We routinely monitor for updates from OWASP based on the latest version available from the official code repository",
			"kind": "managed",
			"version": "3",
			"last_updated": "2021-03-18T14:42:42.993211Z",
			"phase": "http_request_firewall_managed"
		}
	],
	"success": true,
	"errors": [],
	"messages": []
}

Получите набор правил точки входа

Вы можете получить определение ruleset точки входа заданного фаза на уровне зоны или аккаунта.

Если набор правил точки входа существует, API вернёт 200 OK код состояния HTTP вместе с определением набора правил.

Если набор правил точки входа не существует, API вернёт 404 Not Found код статуса HTTP.

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

Следующие GET-запрос получает определение набора правил точки входа для http_request_firewall_managed фаза на уровне зоны. В этом случае набор правил точки входа уже существует и содержит одно правило.

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

Хотя бы одно из следующих права доступа токена требуется:
Получить входной набор правил зоны
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": {
		"id": "<RULESET_ID>",
		"name": "Zone-level phase entry point ruleset",
		"description": "This ruleset executes a managed ruleset.",
		"kind": "zone",
		"version": "2",
		"rules": [
			{
				"id": "<RULE_ID>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID>"
				},
				"last_updated": "2021-03-17T15:42:37.917815Z"
			}
		],
		"last_updated": "2021-03-17T15:42:37.917815Z",
		"phase": "http_request_firewall_managed"
	},
	"success": true,
	"errors": [],
	"messages": []
}

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

Следующие GET-запрос получает определение набора правил точки входа для http_request_firewall_managed фаза на уровне аккаунта.

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

Хотя бы одно из следующих права доступа токена требуется:
Получить входной набор правил аккаунта
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

Просмотр правил, включённых в набор правил

Вы можете просматривать все версии наборов правил точки входа фазы (на уровне аккаунта и зоны), а также пользовательских наборов правил. Для управляемых наборов правил доступна только последняя версия.

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

Следующие GET-запрос содержит список правил версии 2 из http_request_firewall_managed входной набор правил фазы на уровне зоны.

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

Хотя бы одно из следующих права доступа токена требуется:
Получите версию набора правил точки входа зоны
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/phases/http_request_firewall_managed/entrypoint/versions/2" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": {
		"id": "<RULESET_ID>",
		"name": "Zone-level phase entry point ruleset",
		"description": "This ruleset executes a managed ruleset.",
		"kind": "zone",
		"version": "2",
		"rules": [
			{
				"id": "<RULE_ID>",
				"version": "1",
				"action": "execute",
				"expression": "true",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID>"
				},
				"last_updated": "2021-03-17T15:42:37.917815Z"
			}
		],
		"last_updated": "2021-03-17T15:42:37.917815Z",
		"phase": "http_request_firewall_managed"
	},
	"success": true,
	"errors": [],
	"messages": []
}

Пример: просмотр правил в управляемом наборе правил

Следующие GET-запрос содержит список правил версии 2 управляемого набора правил (самой последней версии этого набора правил).

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

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

Хотя бы одно из следующих права доступа токена требуется:
Получите версию набора правил аккаунта
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/$MANAGED_RULESET_ID/versions/2" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": {
		"id": "<MANAGED_RULESET_ID>",
		"name": "Cloudflare Managed Ruleset",
		"description": "Created by the Cloudflare security team, this ruleset is designed to provide fast and effective protection for all your applications. It is frequently updated to cover new vulnerabilities and reduce false positives",
		"kind": "managed",
		"version": "2",
		"rules": [
			{
				"id": "<RULE_1_ID>",
				"version": "1",
				"action": "log",
				"categories": [
					"cve-2014-5265",
					"cve-2014-5266",
					"cve-2014-5267",
					"dos",
					"drupal",
					"wordpress"
				],
				"description": "Drupal, Wordpress - DoS - XMLRPC - CVE:CVE-2014-5265, CVE:CVE-2014-5266, CVE:CVE-2014-5267",
				"last_updated": "2021-03-18T14:42:40.972022Z",
				"ref": "<RULE_1_REF>",
				"enabled": true
			},
			{
				"id": "<RULE_2_ID>",
				"version": "1",
				"action": "block",
				"categories": ["broken-access-control", "cve-2018-12895", "wordpress"],
				"description": "Wordpress - Broken Access Control - CVE:CVE-2018-12895",
				"last_updated": "2021-03-18T14:42:40.972022Z",
				"ref": "<RULE_2_REF>",
				"enabled": true
			}
			// (...)
		],
		"last_updated": "2021-03-18T14:42:40.972022Z",
		"phase": "http_request_firewall_managed"
	},
	"success": true,
	"errors": [],
	"messages": []
}

Дополнительные сведения о доступных методах API для просмотра наборов правил см. в Список и просмотр наборов правил.