INTEGRITY Dokumentace

Nastavení přes API

Nastavte spravovanou sadu pravidel HTTP DDoS Attack Protection definováním přepisů pomocí Rulesets API.

Každá zóna má spravovanou sadu pravidel HTTP DDoS Attack Protection ve výchozím stavu zapnutou. Nemusíte ji proto nasazovat do ddos_l7 fáze výslovně nasazovat. Pravidlo v sadě pravidel fáze stačí vytvořit jen tehdy, když potřebujete nastavit přepisy.

Pokud používáte Terraform, přečtěte si Konfigurace spravovaných sad pravidel DDoS pomocí Terraformu.

Nastavte přepis pro spravovanou sadu pravidel HTTP DDoS Attack Protection

Sadu pravidel HTTP DDoS Attack Protection nastavíte pomocí přepisů. Přepis umožňuje zvolit jinou akci nebo úroveň citlivosti, než jsou výchozí hodnoty. Přehled dostupných akcí a úrovní citlivosti najdete v Parametry sady pravidel.

Přepisy mohou mít rozsah sady pravidel, tagu nebo jednotlivého pravidla. Konfigurace na úrovni tagu a pravidla mají vyšší prioritu než konfigurace na úrovni sady pravidel.

Přepisy můžete vytvářet na úrovni zóny i na úrovni účtu. Přepis na úrovni účtu vám jediným pravidlem uplatní stejné nastavení na několik zón ve vašem účtu. Můžete jím například snížit citlivost konkrétního pravidla spravované sady nebo vyloučit Seznam IP adres pro více zón. Pokud však má daná zóna vlastní přepisy pro spravovanou sadu pravidel HTTP DDoS Attack Protection, přepisy na úrovni účtu se pro tuto zónu nevyhodnotí.

Vytváření více pravidel

Vytvořte více pravidel v ddos_l7 fáze, a definovat tak různé přepisy pro různé skupiny příchozích požadavků. Výraz každého pravidla nastavte podle provozu, jehož ochranu proti HTTP DDoS chcete upravit.

Pravidla ve vstupní sadě pravidel dané fáze, kde vytváříte přepisy, se vyhodnocují postupně, dokud nedojde ke shodě s výrazem pravidla a úrovní citlivosti. Cloudflare pak uplatní první pravidlo, které požadavku odpovídá. Pořadí pravidel ve vstupní sadě je proto velmi důležité.

Příklady volání API

Příklad konfigurace na úrovni zóny

Následující PUT vytvoří novou sadu pravidel (nebo aktualizuje stávající) pro fázi ddos_l7 fázi na úrovni zóny. Požadavek obsahuje několik přepisů, které upravují výchozí chování spravované sady pravidel HTTP DDoS Attack Protection. Jde o tyto přepisy:

Požadavek
curl --request PUT \
https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/phases/ddos_l7/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
  "description": "Execute HTTP DDoS Attack Protection managed ruleset in the zone-level phase entry point ruleset",
  "rules": [
    {
      "action": "execute",
      "action_parameters": {
        "id": "<MANAGED_RULESET_ID>",
        "overrides": {
          "sensitivity_level": "medium",
          "action": "managed_challenge",
          "categories": [
            {
              "category": "<TAG_NAME>",
              "sensitivity_level": "low"
            }
          ],
          "rules": [
            {
              "id": "<MANAGED_RULESET_RULE_ID>",
              "action": "block"
            }
          ]
        }
      },
      "expression": "true"
    }
  ]
}'

Odpověď vrací vytvořenou (nebo aktualizovanou) sadu pravidel vstupního bodu fáze.

Odpověď

{
	"result": {
		"id": "<PHASE_ENTRY_POINT_RULESET_ID>",
		"name": "default",
		"description": "Execute HTTP DDoS Attack Protection managed ruleset in the zone-level phase entry point ruleset",
		"kind": "zone",
		"version": "1",
		"rules": [
			{
				"id": "<RULE_ID>",
				"version": "1",
				"action": "execute",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID>",
					"version": "latest",
					"overrides": {
						"action": "managed_challenge",
						"categories": [
							{
								"category": "<TAG_NAME>",
								"sensitivity_level": "low"
							}
						],
						"rules": [
							{
								"id": "<MANAGED_RULESET_RULE_ID>",
								"action": "block"
							}
						],
						"sensitivity_level": "medium"
					}
				},
				"expression": "true",
				"last_updated": "2021-06-16T04:14:47.977741Z",
				"ref": "<RULE_REF>",
				"enabled": true
			}
		],
		"last_updated": "2021-06-16T04:14:47.977741Z",
		"phase": "ddos_l7"
	}
}

Další informace o definování přepisů pro spravované sady pravidel pomocí Rulesets API najdete v tématu Přepsání spravované sady pravidel v dokumentaci k Ruleset Engine.

Příklad konfigurace na úrovni účtu

Následující PUT vytvoří novou sadu pravidel (nebo aktualizuje stávající) pro fázi ddos_l7 fázi na úrovni účtu. Příklad definuje jediný přepis pravidla pro požadavky přicházející z IP adres v allowlisted_ips Seznam IP adres, s touto konfigurací:

Požadavek
curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/rulesets/phases/ddos_l7/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
  "description": "Disable a managed ruleset rule for allowlisted IP addresses",
  "rules": [
    {
      "expression": "ip.src in $allowlisted_ips",
      "action": "execute",
      "action_parameters": {
        "id": "<MANAGED_RULESET_ID>",
        "overrides": {
          "rules": [
            {
              "id": "<MANAGED_RULESET_RULE_ID>",
              "action": "log",
              "sensitivity_level": "eoff"
            }
          ]
        }
      }
    }
  ]
}'

Odpověď vrací vytvořenou (nebo aktualizovanou) sadu pravidel vstupního bodu fáze.

Odpověď

{
	"result": {
		"id": "<PHASE_ENTRY_POINT_RULESET_ID>",
		"name": "default",
		"description": "Disable a managed ruleset rule for allowlisted IP addresses",
		"kind": "root",
		"version": "1",
		"rules": [
			{
				"id": "<RULE_ID>",
				"version": "1",
				"action": "execute",
				"action_parameters": {
					"id": "<MANAGED_RULESET_ID>",
					"version": "latest",
					"overrides": {
						"rules": [
							{
								"id": "<MANAGED_RULESET_RULE_ID>",
								"action": "log",
								"sensitivity_level": "eoff"
							}
						]
					}
				},
				"expression": "ip.src in $allowlisted_ips",
				"last_updated": "2022-10-16T04:14:47.977741Z",
				"ref": "<RULE_REF>",
				"enabled": true
			}
		],
		"last_updated": "2022-10-16T04:14:47.977741Z",
		"phase": "ddos_l7"
	}
}

Další informace o definování přepisů pro spravované sady pravidel pomocí Rulesets API najdete v tématu Přepsání spravované sady pravidel v dokumentaci k Ruleset Engine.