文件 AWS SDK AWS 範例 SDK 儲存庫中有更多可用的
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS WAF Classic 區域性 使用 的範例 AWS CLI
下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 來執行動作和實作常見案例 AWS WAF Classic 區域性。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然 動作會示範如何呼叫個別服務函數,但您可以在其相關案例中查看內容中的動作。
每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。
主題
動作
下列程式碼範例示範如何使用 associate-web-acl
。
- AWS CLI
-
將 Web ACL 與資源建立關聯
下列
associate-web-acl
命令會將由 ACL 指定的 Web web-acl-id 與 resource-arn 指定的資源建立關聯。資源 ARN 可以參考應用程式負載平衡器或 API Gateway:aws waf-regional associate-web-acl \ --web-acl-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --resource-arn12cs345-67cd-890b-1cd2-c3a4567d89f1
如需詳細資訊,請參閱 ACLs 開發人員指南中的使用 Web AWS WAF。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 AssociateWebAcl
。
-
下列程式碼範例示範如何使用 put-logging-configuration
。
- AWS CLI
-
使用指定的 Kinesis Firehose 串流 ACLARN 建立 Web ARN 的記錄組態
下列
put-logging-configuration
範例顯示區域 中具有 WAF/APIGateway 的 ALB 記錄組態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=[]
\ --regionus-east-1
輸出:
{ "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" ] } }
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 PutLoggingConfiguration
。
-
下列程式碼範例示範如何使用 update-byte-match-set
。
- AWS CLI
-
更新位元組比對集
下列
update-byte-match-set
命令會刪除 中的ByteMatchTuple
物件 (篩選條件)ByteMatchSet
。由於updates
值具有內嵌雙引號,因此您必須以單一引號包圍該值。aws waf-regional update-byte-match-set \ --byte-match-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updates 'Action="DELETE",ByteMatchTuple={FieldToMatch={Type="HEADER",Data="referer"},TargetString="badrefer1",TextTransformation="NONE",PositionalConstraint="CONTAINS"}
'如需詳細資訊,請參閱 AWS WAF 開發人員指南中的使用字串比對條件。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateByteMatchSet
。
-
下列程式碼範例示範如何使用 update-ip-set
。
- AWS CLI
-
若要更新 IP 集
下列
update-ip-set
命令會使用 IPSet 地址更新 IPv4,並刪除 IPv6 地址。執行get-change-token
命令change-token
以取得 的值。由於更新的 值包含內嵌雙引號,因此您必須以單一引號環繞該值。aws waf update-ip-set \ --ip-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-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"}
'或者,您可以使用 JSON 檔案來指定輸入。例如:
aws waf-regional update-ip-set \ --ip-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updatesfile://change.json
的內容
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" } } ]
如需詳細資訊,請參閱 AWS WAF 開發人員指南中的使用 IP 比對條件。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateIpSet
。
-
下列程式碼範例示範如何使用 update-rule
。
- AWS CLI
-
若要更新規則
下列
update-rule
命令會刪除規則中的Predicate
物件。由於updates
值具有內嵌雙引號,因此您必須使用單一引號環繞整個值。aws waf-regional update-rule \ --rule-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updates 'Action="DELETE",Predicate={Negated=false,Type="ByteMatch",DataId="MyByteMatchSetID"}
'如需詳細資訊,請參閱 AWS WAF 開發人員指南 中的使用規則。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateRule
。
-
下列程式碼範例示範如何使用 update-size-constraint-set
。
- AWS CLI
-
更新大小限制集
下列
update-size-constraint-set
命令會刪除大小限制集中的 a SizeConstraint` 物件 (篩選條件)。由於updates
值包含內嵌雙引號,因此您必須以單一引號環繞整個值。aws waf-regional update-size-constraint-set \ --size-constraint-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updates 'Action="DELETE",SizeConstraint={FieldToMatch={Type="QUERY_STRING"},TextTransformation="NONE",ComparisonOperator="GT",Size=0}
'如需詳細資訊,請參閱 AWS WAF 開發人員指南中的使用大小限制條件。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateSizeConstraintSet
。
-
下列程式碼範例示範如何使用 update-sql-injection-match-set
。
- AWS CLI
-
更新 SQL Injection Match Set
下列
update-sql-injection-match-set
命令會刪除 SQL 注入比對集中的SqlInjectionMatchTuple
物件 (篩選條件)。由於updates
值包含內嵌雙引號,因此您必須以單一引號環繞整個值。: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"}'
如需詳細資訊,請參閱 SQL 開發人員指南中的使用 Word 注入比對條件。 AWS WAF
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateSqlInjectionMatchSet
。
-
下列程式碼範例示範如何使用 update-web-acl
。
- AWS CLI
-
更新 Web ACL
下列
update-web-acl
命令會刪除 WebACL 中的ActivatedRule
物件。由於updates
值包含內嵌雙引號,因此您必須以單一引號環繞整個值。aws waf-regional update-web-acl \ --web-acl-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updates Action="DELETE",ActivatedRule='{Priority=1,RuleId="WAFRule-1-Example",Action={Type="ALLOW"},Type="ALLOW"}'如需詳細資訊,請參閱 ACLs 開發人員指南中的使用 Web AWS WAF。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateWebAcl
。
-
下列程式碼範例示範如何使用 update-xss-match-set
。
- AWS CLI
-
更新 XSSMatchSet
下列
update-xss-match-set
命令會刪除 中的XssMatchTuple
物件 (篩選條件)XssMatchSet
。由於updates
值包含內嵌雙引號,因此您必須以單一引號環繞整個值。aws waf-regional update-xss-match-set \ --xss-match-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
\ --change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
\ --updates 'Action="DELETE",XssMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}
'如需詳細資訊,請參閱 AWS WAF 開發人員指南中的使用跨網站指令碼比對條件。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateXssMatchSet
。
-