AWS WAF Classic Regional-Beispiele zur Verwendung von AWS CLI - AWS Command Line Interface

AWS WAF Classic Regional-Beispiele zur Verwendung von AWS CLI

Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit AWS WAF Classic Regional nutzen.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt, wie associate-web-acl verwendet wird.

AWS CLI

So verknüpfen Sie eine Web-ACL mit einer Ressource

Der folgende associate-web-acl-Befehl verknüpft eine mit der Web-ACL-ID definierte Web-ACL mit einer Ressource, die wiederum durch den resource-arn definiert ist. Der Ressourcen-ARN kann sich entweder auf einen Application Load Balancer oder auf ein API Gateway beziehen:

aws waf-regional associate-web-acl \ --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --resource-arn 12cs345-67cd-890b-1cd2-c3a4567d89f1

Weitere Informationen finden Sie unter Arbeiten mit Web-ACLs im AWS-WAF-Entwicklerhandbuch.

  • API-Details finden Sie unter AssociateWebAcl in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie put-logging-configuration verwendet wird.

AWS CLI

So erstellen Sie eine Logging-Konfiguration für den Web-ACL-ARN mit dem angegebenen Kinesis Firehose-Stream-ARN

Das folgende Beispiel für put-logging-configuration zeigt die Logging-Konfiguration für WAF mit ALB/APIGateway in Region us-east-1.

aws waf-regional put-logging-configuration \ --logging-configuration ResourceArn=arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3,LogDestinationConfigs=arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream,RedactedFields=[] \ --region us-east-1

Ausgabe:

{ "LoggingConfiguration": { "ResourceArn": "arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3", "LogDestinationConfigs": [ "arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream" ] } }

Das folgende Codebeispiel zeigt, wie update-byte-match-set verwendet wird.

AWS CLI

So aktualisieren Sie ein Byte-Match-Set

Der folgende update-byte-match-set-Befehl löscht ein ByteMatchTuple-Objekt (Filter) in einem ByteMatchSet. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den Wert mit einfachen Anführungszeichen umschließen.

aws waf-regional update-byte-match-set \ --byte-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",ByteMatchTuple={FieldToMatch={Type="HEADER",Data="referer"},TargetString="badrefer1",TextTransformation="NONE",PositionalConstraint="CONTAINS"}'

Weitere Informationen finden Sie unter Arbeiten mit Bedingungen für den Abgleich von Zeichenfolgen im AWS-WAF-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie update-ip-set verwendet wird.

AWS CLI

So erstellen Sie ein IP-Set

Der folgende update-ip-set-Befehl aktualisiert ein IP-Set mit einer IPv4-Adresse und löscht eine IPv6-Adresse. Rufen Sie den Wert für change-token ab, indem Sie den Befehl get-change-token ausführen. Da der Wert für Updates eingebettete doppelte Anführungszeichen enthält, müssen Sie den Wert mit einfachen Anführungszeichen umschließen.

aws waf update-ip-set \ --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="INSERT",IPSetDescriptor={Type="IPV4",Value="12.34.56.78/16"},Action="DELETE",IPSetDescriptor={Type="IPV6",Value="1111:0000:0000:0000:0000:0000:0000:0111/128"}'

Alternativ können Sie eine JSON-Datei verwenden, um die Eingabe vorzugeben. Zum Beispiel:

aws waf-regional update-ip-set \ --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates file://change.json

Inhalt des change.json

[ { "Action": "INSERT", "IPSetDescriptor": { "Type": "IPV4", "Value": "12.34.56.78/16" } }, { "Action": "DELETE", "IPSetDescriptor": { "Type": "IPV6", "Value": "1111:0000:0000:0000:0000:0000:0000:0111/128" } } ]

Weitere Informationen finden Sie unter Arbeiten mit IP Match Conditions im AWS-WAF-Entwicklerhandbuch.

  • API-Details finden Sie unter UpdateIpSet in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie update-rule verwendet wird.

AWS CLI

So aktualisieren Sie eine Regel

Der folgende update-rule-Befehl löscht ein Predicate-Objekt in einer Regel. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den gesamten Wert mit einfachen Anführungszeichen umschließen.

aws waf-regional update-rule \ --rule-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",Predicate={Negated=false,Type="ByteMatch",DataId="MyByteMatchSetID"}'

Weitere Informationen finden Sie unter Arbeiten mit Regeln im AWS-WAF-Entwicklerhandbuch.

  • API-Details finden Sie unter UpdateRule in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie update-size-constraint-set verwendet wird.

AWS CLI

So aktualisieren Sie einen Größenbeschränkungssatz

Der folgende update-size-constraint-set-Befehl löscht ein SizeConstraint`-Objekt (Filter) in einem Größenbeschränkungssatz. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den gesamten Wert mit einfachen Anführungszeichen umschließen.

aws waf-regional update-size-constraint-set \ --size-constraint-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",SizeConstraint={FieldToMatch={Type="QUERY_STRING"},TextTransformation="NONE",ComparisonOperator="GT",Size=0}'

Weitere Informationen finden Sie unter Arbeiten mit Size Constraint Conditions im AWS-WAF-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie update-sql-injection-match-set verwendet wird.

AWS CLI

So aktualisieren Sie einen SQL-Injektions-Übereinstimmungssatz

Der folgende update-sql-injection-match-set-Befehl löscht ein SqlInjectionMatchTuple-Objekt (Filter) in einem SQL-Injektions-Übereinstimmungssatz. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den gesamten Wert in einfache Anführungszeichen setzen:

aws waf-regional update-sql-injection-match-set --sql-injection-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 --updates 'Action="DELETE",SqlInjectionMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}'

Weitere Informationen finden Sie unter Arbeiten mit SQL-Injektions-Übereinstimmungssätzen im AWS-WAF-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie update-web-acl verwendet wird.

AWS CLI

So aktualisieren Sie eine Web-ACL

Der folgende update-web-acl-Befehl löscht ein ActivatedRule-Objekt in einer WebACL. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den gesamten Wert in einfache Anführungszeichen setzen.

aws waf-regional update-web-acl \ --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates Action="DELETE",ActivatedRule='{Priority=1,RuleId="WAFRule-1-Example",Action={Type="ALLOW"},Type="ALLOW"}'

Weitere Informationen finden Sie unter Arbeiten mit Web-ACLs im AWS-WAF-Entwicklerhandbuch.

  • API-Details finden Sie unter UpdateWebAcl in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie update-xss-match-set verwendet wird.

AWS CLI

So aktualisieren Sie ein XSSMatchSet

Der folgende update-xss-match-set-Befehl löscht ein XssMatchTuple-Objekt (Filter) in einem XssMatchSet. Da der updates-Wert eingebettete doppelte Anführungszeichen enthält, müssen Sie den gesamten Wert mit einfachen Anführungszeichen umschließen.

aws waf-regional update-xss-match-set \ --xss-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",XssMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}'

Weitere Informationen finden Sie unter Arbeiten mit Cross-Site-Scripting-Übereinstimmungsbedingungen im AWS-WAF-Entwicklerhandbuch.