Verwenden Sie den Befehl gcloud compute security-policies create, um eine neue Cloud Armor-Sicherheitsrichtlinie zu erstellen.
Verwenden Sie im Feld type den Wert CLOUD_ARMOR, um eine Backend-Sicherheits
richtlinie zu erstellen, oder CLOUD_ARMOR_EDGE, um eine Edge-Sicherheitsrichtlinie zu erstellen. Das Flag type ist optional. Wenn kein Typ angegeben ist, wird standardmäßig eine Backend-Sicherheitsrichtlinie erstellt:
gcloud compute security-policies create NAME \
[--type=CLOUD_ARMOR|CLOUD_ARMOR_EDGE] \
[--file-format=FILE_FORMAT | --description=DESCRIPTION] \
[--file-name=FILE_NAME]
Ersetzen Sie Folgendes:
NAME: der Name der Sicherheitsrichtlinie
FILE_FORMAT: das Format der in --file-name angegebenen Datei. Geben Sie yaml oder json an.
DESCRIPTION: die Beschreibung der Sicherheitsrichtlinie
FILE_NAME: der Name einer Datei, die einen YAML- oder JSON-Export der Sicherheitsrichtlinie enthält
Mit dem folgenden Befehl wird eine zuvor erstellte Richtlinie aktualisiert, das JSON-Parsen aktiviert und die Logging-Ebene in VERBOSE geändert:
gcloud compute security-policies update my-policy \
--json-parsing=STANDARD \
--log-level=VERBOSE
Verwenden Sie den Befehl gcloud
compute security-policies rules create PRIORITY, um einer Sicherheitsrichtlinie Regeln hinzuzufügen.
gcloud compute security-policies rules create PRIORITY \
[--security-policy POLICY_NAME] \
[--description DESCRIPTION] \
--src-ip-ranges IP_RANGE,... | --expression EXPRESSION \
--action=[ allow | deny-403 | deny-404 | deny-502 ] \
[--preview]
Ersetzen Sie Folgendes:
PRIORITY: die Priorität, die der Regel in der Richtlinie zugewiesen werden soll. Informationen zur Funktionsweise der Regelpriorität finden Sie unter
Regelauswertungsreihenfolge.
POLICY_NAME: der Name Ihrer Sicherheitsrichtlinie
DESCRIPTION: eine Beschreibung der Regel
IP_RANGE,...: eine durch Kommas getrennte Liste von IP-Adressbereichen
EXPRESSION: ein Ausdruck der Cloud Armor-Regelsprache
Der folgende Befehl fügt beispielsweise eine Regel hinzu, mit der Traffic von den IP-Adressbereichen 192.0.2.0/24 und 198.51.100.0/24 blockiert wird. Die Regel hat die Priorität 1000 und ist eine Regel in der Richtlinie my-policy.
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--description "block traffic from 192.0.2.0/24 and 198.51.100.0/24" \
--src-ip-ranges "192.0.2.0/24","198.51.100.0/24" \
--action "deny-403"
Wenn das Flag --preview hinzugefügt wird, wird die Regel zur Richtlinie hinzugefügt, aber nicht erzwungen, und der Traffic, der die Regel auslöst, wird nur in Logs erfasst.
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--description "block traffic from 192.0.2.0/24 and 198.51.100.0/24" \
--src-ip-ranges "192.0.2.0/24","198.51.100.0/24" \
--action "deny-403" \
--preview
Verwenden Sie das Flag --expression, um eine benutzerdefinierte Bedingung anzugeben. Weitere
Informationen finden Sie unter
Sprachattribute für benutzerdefinierte Regeln konfigurieren.
Der folgende Befehl fügt eine Regel hinzu, die Traffic von der IP-Adresse 1.2.3.4 zulässt, und enthält den String example im user-agent-Header:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "inIpRange(origin.ip, '1.2.3.4/32') && has(request.headers['user-agent']) && request.headers['user-agent'].contains('example')" \
--action allow \
--description "Block User-Agent 'example'"
Der folgende Befehl fügt eine Regel zum Blockieren von Anfragen hinzu, wenn das Cookie der Anfrage einen bestimmten Wert enthält:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "has(request.headers['cookie']) && request.headers['cookie'].contains('cookie_name=cookie_value')" \
--action "deny-403" \
--description "Cookie Block"
Der folgende Befehl fügt eine Regel hinzu, um Anfragen aus der Region AU zu blockieren:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "origin.region_code == 'AU'" \
--action "deny-403" \
--description "AU block"
Der folgende Befehl fügt eine Regel hinzu, um Anfragen aus der Region AU zu blockieren, die nicht im angegebenen IP-Bereich liegen:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "origin.region_code == 'AU' && !inIpRange(origin.ip, '1.2.3.0/24')" \
--action "deny-403" \
--description "country and IP block"
Der folgende Befehl fügt eine Regel hinzu, um Anfragen mit einem URI zu blockieren, der einem regulären Ausdruck entspricht:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "request.path.matches('/example_path/')" \
--action "deny-403" \
--description "regex block"
Der folgende Befehl fügt eine Regel zum Blockieren von Anfragen hinzu, wenn der Base64-decodierte Wert des Headers user-id einen bestimmten Wert enthält:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')" \
--action "deny-403" \
--description "country and IP block"
Der folgende Befehl fügt eine Regel hinzu, die einen vorkonfigurierten Ausdruck verwendet, um SQLi-Angriffe abzuwenden:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "evaluatePreconfiguredWaf('sqli-v422-stable')" \
--action "deny-403"
Der folgende Befehl fügt eine Regel hinzu, die einen vorkonfigurierten Ausdruck verwendet, um den Zugriff von allen IP-Adressen in einer Liste mit benannten IP-Adressen zuzulassen:
gcloud compute security-policies rules create 1000 \
--security-policy my-policy \
--expression "evaluatePreconfiguredWaf('sourceiplist-fastly')" \
--action "allow"