← Dokumentace WAF / account / managed-rulesets
Nasazení spravované sady pravidel WAF přes API (účet)
Použijte Rulesets API k nasazení spravované sady pravidel WAF do http_request_firewall_managed fáze na úrovni účtu.
WAF Managed Rules stránka obsahuje ID jednotlivých spravovaných sad pravidel WAF. Tyto informace budete potřebovat při nasazování sad pravidel přes API.
Pokud používáte Terraform, přečtěte si Konfigurace WAF Managed Rules pomocí Terraformu.
Příklad
Následující příklad nasadí Cloudflare Managed Ruleset do http_request_firewall_managed fáze daného účtu ($ACCOUNT_ID) vytvořením pravidla, které spustí spravovanou sadu pravidel. Pravidla ve spravované sadě pravidel se spouštějí, když název zóny odpovídá jedné z hodnot example.com nebo anotherexample.com.
-
Vyvolejte Získání vstupní sady pravidel účtu operaci k získání definice vstupní sady pravidel pro
http_request_firewall_managedfáze. Budete potřebovat ID účtu pro tento úkol.
Alespoň jeden z následujících oprávnění tokenu je povinné:Požadovaná oprávnění API tokenu
Account WAF WriteAccount WAF ReadAccount Rulesets ReadAccount Rulesets Write
Získání vstupní sady pravidel účtucurl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \ --request GET \ --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"{ "result": { "description": "Account-level phase entry point", "id": "<RULESET_ID>", "kind": "root", "last_updated": "2024-03-16T15:40:08.202335Z", "name": "root", "phase": "http_request_firewall_managed", "rules": [ // ... ], "source": "firewall_managed", "version": "10" }, "success": true, "errors": [], "messages": [] } -
Pokud vstupní sada pravidel již existuje (to znamená, pokud jste obdrželi
200 OKstavový kód a definici sady pravidel), poznamenejte si ID sady pravidel z odpovědi. Poté zavolejte Vytvoření pravidla sady pravidel účtu operaci pro přidáníexecutepravidlo do stávající sady pravidel nasazující Cloudflare Managed Ruleset (s IDefb7b8c949ac4650a09736fc376e9aee). Ve výchozím nastavení se pravidlo přidá na konec seznamu pravidel, která už v sadě pravidel jsou.
Alespoň jeden z následujících oprávnění tokenu je povinné:Požadovaná oprávnění API tokenu
Account WAF WriteAccount Rulesets Write
Vytvoření pravidla sady pravidel účtucurl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets/$RULESET_ID/rules" \ --request POST \ --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ --json '{ "action": "execute", "action_parameters": { "id": "efb7b8c949ac4650a09736fc376e9aee" }, "expression": "(cf.zone.name in {\"example.com\" \"anotherexample.com\"}) and cf.zone.plan eq \"ENT\"", "description": "Execute the Cloudflare Managed Ruleset" }'{ "result": { "id": "<RULESET_ID>", "name": "Account-level phase entry point", "description": "", "kind": "root", "version": "11", "rules": [ // ... any existing rules { "id": "<RULE_ID>", "version": "1", "action": "execute", "action_parameters": { "id": "efb7b8c949ac4650a09736fc376e9aee", "version": "latest" }, "expression": "(cf.zone.name in {\"example.com\" \"anotherexample.com\"}) and cf.zone.plan eq \"ENT\"", "description": "Execute the Cloudflare Managed Ruleset", "last_updated": "2024-03-18T18:30:08.122758Z", "ref": "<RULE_REF>", "enabled": true } ], "last_updated": "2024-03-18T18:30:08.122758Z", "phase": "http_request_firewall_managed" }, "success": true, "errors": [], "messages": [] } -
Pokud vstupní sada pravidel neexistuje (to znamená, pokud jste obdrželi
404 Not Foundstavový kód v kroku 1), vytvořte ji pomocí Vytvořte account ruleset operaci. Zahrňte jedno pravidlo dorulespole, které spouští Cloudflare Managed Ruleset (s IDefb7b8c949ac4650a09736fc376e9aee) pro všechny příchozí požadavky, kde název zóny odpovídá jedné z hodnotexample.comneboanotherexample.com.
Alespoň jeden z následujících oprávnění tokenu je povinné:Požadovaná oprávnění API tokenu
Account WAF WriteAccount Rulesets Write
Vytvořte account rulesetcurl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \ --request POST \ --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ --json '{ "name": "My ruleset", "description": "Entry point ruleset for WAF managed rulesets", "kind": "root", "phase": "http_request_firewall_managed", "rules": [ { "action": "execute", "action_parameters": { "id": "efb7b8c949ac4650a09736fc376e9aee" }, "expression": "(cf.zone.name in {\"example.com\" \"anotherexample.com\"}) and cf.zone.plan eq \"ENT\"", "description": "Execute the Cloudflare Managed Ruleset" } ] }'
Další kroky
Chcete-li přizpůsobit chování pravidel obsažených ve spravované sadě pravidel, vytvořit přepis.
Chcete-li přeskočit provedení spravovaných sad pravidel WAF nebo některých jejich pravidel, vytvořit výjimku (nazývané také přeskakovací pravidlo).
Výjimky mají přednost před přepsáními.
Další zdroje
Pokyny k nasazení spravované sady pravidel na úrovni zóny pomocí API najdete v Nasazení spravované sady pravidel WAF přes API (zóna).
Další informace o práci se spravovanými sadami pravidel přes API najdete v Práce se spravovanými sadami pravidel v dokumentaci k Ruleset Engine.