OR-Regelanweisung - AWS WAF, AWS Firewall ManagerAWS Shield Advanced, und Direktor für AWS Shield Netzwerksicherheit

Wir stellen vor: ein neues Konsolenerlebnis für AWS WAF

Sie können das aktualisierte Erlebnis jetzt verwenden, um überall in der Konsole auf AWS WAF Funktionen zuzugreifen. Weitere Details finden Sie unter Arbeiten mit der aktualisierten Konsolenerfahrung.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

OR-Regelanweisung

Die OR-Regelanweisung kombiniert verschachtelte Anweisungen mit der OR-Logik, sodass eine der verschachtelten Anweisungen übereinstimmen muss, damit die OR-Anweisung übereinstimmt. Dies erfordert mindestens zwei verschachtelte Anweisungen.

Wenn Sie beispielsweise Anfragen blockieren möchten, die aus einem bestimmten Land kommen oder eine bestimmte Abfragezeichenfolge enthalten, könnten Sie eine Anweisung erstellen und darin eine OR Geo-Match-Anweisung für das Land und eine String-Match-Anweisung für die Abfragezeichenfolge verschachteln.

Wenn Sie stattdessen Anfragen blockieren möchten, die nicht aus einem bestimmten Land stammen oder eine bestimmte Abfragezeichenfolge enthalten, würden Sie die vorherige OR Anweisung so ändern, dass die Geo-Match-Anweisung eine Ebene tiefer in einer NOT Anweisung verschachtelt wird. Diese Verschachtelungsebene erfordert die Verwendung der JSON-Formatierung, weil die Konsole nur eine Verschachtelungsebene unterstützt.

Eigenschaften der Regelaussage

Verschachtelung – Sie können diesen Anweisungstyp verschachteln.

WCUs— Hängt von den verschachtelten Anweisungen ab.

Wo finde ich diese Regelaussage

  • Rule Builder in der Konsole – Wählen Sie für If a request (Wenn eine Anforderung) die Option matches at least one of the statements (OR) (mit mindestens einer der Anweisungen übereinstimmt (OR)) aus. Füllen Sie dann die verschachtelten Anweisungen aus.

  • API – OrStatement

Beispiele

Die folgende Liste zeigt die Verwendung vonOR, um zwei andere Anweisungen zu kombinieren. Die OR Anweisung ist eine Übereinstimmung, wenn eine der verschachtelten Anweisungen übereinstimmt.

{ "Name": "neitherOfTwo", "Priority": 1, "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "neitherOfTwo" }, "Statement": { "OrStatement": { "Statements": [ { "GeoMatchStatement": { "CountryCodes": [ "CA" ] } }, { "IPSetReferenceStatement": { "ARN": "arn:aws:wafv2:us-east-1:111111111111:regional/ipset/test-ip-set-22222222/33333333-4444-5555-6666-777777777777" } } ] } } }

Mit dem visuellen Editor für Konsolenregeln können Sie die meisten verschachtelbaren Anweisungen unter einer logischen Regelanweisung verschachteln, aber Sie können den visuellen Editor nicht verwenden, um OR-Anweisungen zu verschachtelnOR. AND Um diese Art der Verschachtelung zu konfigurieren, müssen Sie Ihre Regelanweisung in JSON angeben. Die folgende JSON-Regelliste enthält beispielsweise eine Anweisung, die in einer OR Anweisung verschachtelt istAND.

{ "Name": "match_rule", "Priority": 0, "Statement": { "AndStatement": { "Statements": [ { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:bot-control:bot:category:monitoring" } }, { "NotStatement": { "Statement": { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:bot-control:bot:name:pingdom" } } } }, { "OrStatement": { "Statements": [ { "GeoMatchStatement": { "CountryCodes": [ "JM", "JP" ] } }, { "ByteMatchStatement": { "SearchString": "JCountryString", "FieldToMatch": { "Body": {} }, "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ], "PositionalConstraint": "CONTAINS" } } ] } } ] } }, "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "match_rule" } }