Dokumentace Domluvit pilot

Nastavení přes API

Chcete-li povolit Cloudflare OWASP Core Ruleset pro danou zónu pomocí API, vytvořte pravidlo s execute akce ve vstupní sadě pravidel pro http_request_firewall_managed fáze. Další informace o nasazení spravované sady pravidel najdete v Nasazení spravované sady pravidel.

Chcete-li nakonfigurovat Cloudflare OWASP Core Ruleset pomocí API, vytvořte přepisy pomocí Rulesets API. Můžete provést následující konfigurace:

V rámci spravované sady pravidel můžete také zakázat konkrétní pravidla pomocí přepsání pravidel.

Nastavte úroveň paranoie

Chcete-li povolit všechna pravidla až po konkrétní paranoia level, vytvořte přepsání štítků které deaktivují všechna pravidla přiřazená vyšším úrovním paranoia.

Štítky přiřazené jednotlivým úrovním paranoia jsou následující:

Pokud chcete povolit všechna pravidla přiřazená k úrovni paranoie 2 (PL2), zakažte pravidla přiřazená ke štítkům paranoia-level-3 a paranoia-level-4. Povolí se všechna pravidla přiřazená úrovním paranoia level až do požadované úrovně (v tomto příkladu všechna pravidla přiřazená PL1 a PL2).

Příklad

Tento příklad nastavuje paranoia level Cloudflare OWASP Core Ruleset pro zónu na PL2. K provedení této konfigurace musíte deaktivovat štítky přiřazené úrovním PL3 a PL4 (paranoia-level-3 a paranoia-level-4) pomocí tag overrides.

  1. Získejte ID Cloudflare OWASP Core Ruleset pomocí Seznam sad pravidel na úrovni účtu metodu, protože spravované sady pravidel WAF existují na úrovni účtu. Případně použijte přímo následující ID sady pravidel: .

    Seznam sad pravidel na úrovni účtu
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
    	--request GET \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
    {
    	"result": [
    		{
    			"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    			"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",
    			"source": "firewall_managed",
    			"kind": "managed",
    			"version": "35",
    			"last_updated": "2022-01-24T21:08:20.293196Z",
    			"phase": "http_request_firewall_managed"
    		}
    		// (...)
    	],
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  2. Získejte ID pravidla, které nasazuje sadu pravidel OWASP do vaší zóny, pomocí Získání vstupní sady pravidel zóny. Vyhledejte pravidlo s "action": "execute" nakonfigurované s ID sady pravidel OWASP v action_parameters objekt (ID ). Toto pravidlo bude existovat pouze v případě, že jste už nasadili sadu pravidel OWASP.

    Získání vstupní sady pravidel zóny
    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": "<ENTRY_POINT_RULESET_ID>",
    		"name": "zone",
    		"description": "",
    		"source": "firewall_managed",
    		"kind": "zone",
    		"version": "3",
    		"rules": [
    			// (...)
    			{
    				"id": "<EXECUTE_RULE_ID>",
    				"version": "1",
    				"action": "execute",
    				"action_parameters": {
    					"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    					"version": "latest"
    				},
    				"expression": "true",
    				"last_updated": "2022-02-04T16:27:58.930927Z",
    				"ref": "<RULE_REF>",
    				"enabled": true
    			}
    			// (...)
    		],
    		"last_updated": "2022-02-07T10:41:31.702744Z",
    		"phase": "http_request_firewall_managed"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  3. Aktualizujte pravidlo, které jste identifikovali, pomocí Aktualizace pravidla v sadě pravidel zóny operaci, přičemž přidáte přepsání podle štítků, která deaktivují pravidla se štítky paranoia-level-3 a paranoia-level-4.

    Aktualizace pravidla v sadě pravidel zóny
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/$ENTRY_POINT_RULESET_ID/rules/$EXECUTE_RULE_ID" \
    	--request PATCH \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    	--json '{
    		"action": "execute",
    		"action_parameters": {
    				"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    				"overrides": {
    						"categories": [
    								{
    										"category": "paranoia-level-3",
    										"enabled": false
    								},
    								{
    										"category": "paranoia-level-4",
    										"enabled": false
    								}
    						]
    				}
    		},
    		"expression": "true",
    		"enabled": true
    	}'

Další informace o vytváření přepisů najdete v Přepsání spravované sady pravidel.

Konfigurace prahové hodnoty skóre a akce

Chcete-li definovat prahová hodnota skóre, nebo pro určení action, kterou chcete provést v případě, že skóre hrozby překročí prahovou hodnotu, vytvořte přepsání pravidla pro poslední pravidlo ve spravované sadě pravidel, které:

Příklad

Tento příklad konfiguruje prahovou hodnotu skóre spravované sady pravidel a prováděnou akci vytvořením přepsání pravidla pro poslední pravidlo spravované sady pravidel.

  1. Získejte ID Cloudflare OWASP Core Ruleset pomocí Seznam sad pravidel na úrovni účtu metodu, protože spravované sady pravidel WAF existují na úrovni účtu. Případně použijte přímo následující ID sady pravidel: .

    Seznam sad pravidel na úrovni účtu
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
    	--request GET \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
    {
    	"result": [
    		{
    			"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    			"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",
    			"source": "firewall_managed",
    			"kind": "managed",
    			"version": "35",
    			"last_updated": "2022-01-24T21:08:20.293196Z",
    			"phase": "http_request_firewall_managed"
    		}
    		// (...)
    	],
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  2. Získejte ID poslední pravidlo v sadě Cloudflare OWASP Core Ruleset. Použijte Získání sady pravidel účtu metodu k získání seznamu pravidel v sadě pravidel. Případně použijte přímo následující ID pravidla: .

    Získání sady pravidel účtu
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/$OWASP_RULESET_ID" \
    	--request GET \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
    {
    	"result": {
    		"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    		"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",
    		"source": "firewall_managed",
    		"kind": "managed",
    		"version": "36",
    		"rules": [
    			// (...)
    			{
    				"id": "6179ae15870a4bb7b2d480d4843b323c",
    				"version": "35",
    				"action": "block",
    				"score_threshold": 40,
    				"description": "949110: Inbound Anomaly Score Exceeded",
    				"last_updated": "2022-02-08T16:11:18.236676Z",
    				"ref": "ad0beb2fce9f149e565ee78d6e659d47",
    				"enabled": true
    			}
    		],
    		"last_updated": "2022-02-08T16:11:18.236676Z",
    		"phase": "http_request_firewall_managed"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  3. Získejte ID pravidla, které nasazuje sadu pravidel OWASP do vaší zóny, pomocí Získání vstupní sady pravidel zóny (v tomto příkladu <EXECUTE_RULE_ID>). Vyhledejte pravidlo s "action": "execute" nakonfigurované s ID sady pravidel OWASP v action_parameters objekt (ID ). Toto pravidlo bude existovat pouze v případě, že jste už nasadili sadu pravidel OWASP.

    Získání vstupní sady pravidel zóny
    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": "<ENTRY_POINT_RULESET_ID>",
    		"name": "zone",
    		"description": "",
    		"source": "firewall_managed",
    		"kind": "zone",
    		"version": "3",
    		"rules": [
    			// (...)
    			{
    				"id": "<EXECUTE_RULE_ID>",
    				"version": "1",
    				"action": "execute",
    				"action_parameters": {
    					"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    					"version": "latest"
    				},
    				"expression": "true",
    				"last_updated": "2022-02-04T16:27:58.930927Z",
    				"ref": "<RULE_REF>",
    				"enabled": true
    			}
    			// (...)
    		],
    		"last_updated": "2022-02-07T10:41:31.702744Z",
    		"phase": "http_request_firewall_managed"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  4. Aktualizujte pravidlo, které jste identifikovali ve vstupní sadě pravidel, pomocí Aktualizace pravidla v sadě pravidel zóny operaci, přičemž přidáte přepsání pravidla pro poslední pravidlo v sadě pravidel OWASP (identifikované v kroku 2) s následujícími vlastnostmi a hodnotami:

    • "score_threshold": 60
    • "action": "managed_challenge"
    Aktualizace pravidla v sadě pravidel zóny
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/$ENTRY_POINT_RULESET_ID/rules/$EXECUTE_RULE_ID" \
    	--request PATCH \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    	--json '{
    		"action": "execute",
    		"action_parameters": {
    				"id": "4814384a9e5d4991b9815dcfc25d2f1f",
    				"overrides": {
    						"rules": [
    								{
    										"id": "6179ae15870a4bb7b2d480d4843b323c",
    										"score_threshold": 60,
    										"action": "managed_challenge"
    								}
    						]
    				}
    		},
    		"expression": "true",
    		"enabled": true
    	}'

Další zdroje

Další příklady API najdete v Příklady přepisů v dokumentaci k Ruleset Engine.

Požádejte o pilot zdarma

Domluvit pilot