使用 AWS CLI 的 AWS WAFV2 範例
下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 AWS WAFV2 來執行動作,並實作常見案例。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境中查看內容中的動作。
每個範例均包含完整原始程式碼的連結,您可在連結中找到如何在內容中設定和執行程式碼的相關指示。
主題
動作
以下程式碼範例顯示如何使用 associate-web-acl。
- AWS CLI
-
將 Web ACL 與區域 AWS 資源建立關聯
下列
associate-web-acl範例會將指定的 web ACL 與 Application Load Balancer 建立關聯。aws wafv2 associate-web-acl \ --web-acl-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --resource-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/waf-cli-alb/1ea17125f8b25a2a\ --regionus-west-2此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的將 Web ACL 與 AWS 資源關聯或取消關聯。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 AssociateWebAcl
。
-
以下程式碼範例顯示如何使用 check-capacity。
- AWS CLI
-
取得規則集所使用的容量
以下
check-capacity會擷取規則集的容量需求,其中包含速率型規則陳述式,以及包含巢狀規則的 AND 規則陳述式。aws wafv2 check-capacity \ --scopeREGIONAL\ --rulesfile://waf-rule-list.json\ --regionus-west-2檔案的內容://waf-rule-list.json:
[ { "Name":"basic-rule", "Priority":0, "Statement":{ "AndStatement":{ "Statements":[ { "ByteMatchStatement":{ "SearchString":"example.com", "FieldToMatch":{ "SingleHeader":{ "Name":"host" } }, "TextTransformations":[ { "Priority":0, "Type":"LOWERCASE" } ], "PositionalConstraint":"EXACTLY" } }, { "GeoMatchStatement":{ "CountryCodes":[ "US", "IN" ] } } ] } }, "Action":{ "Allow":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"basic-rule" } }, { "Name":"rate-rule", "Priority":1, "Statement":{ "RateBasedStatement":{ "Limit":1000, "AggregateKeyType":"IP" } }, "Action":{ "Block":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"rate-rule" } } ]輸出:
{ "Capacity":15 }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 AWS WAF Web ACL 容量單位 (WCU)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CheckCapacity
。
-
以下程式碼範例顯示如何使用 create-ip-set。
- AWS CLI
-
建立用於 Web ACL 和規則群組的 IP 集
下列
create-ip-set命令會建立具有單一地址範圍規格的 IP 集。aws wafv2 create-ip-set \ --nametestip\ --scopeREGIONAL\ --ip-address-versionIPV4\ --addresses198.51.100.0/16輸出:
{ "Summary":{ "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/ipset/testip/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"", "Name":"testip", "LockToken":"447e55ac-0000-0000-0000-86b67c17f8b5", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateIpSet
。
-
以下程式碼範例顯示如何使用 create-regex-pattern-set。
- AWS CLI
-
建立用於 Web ACL 和規則群組的規則運算式模式集
下列
create-regex-pattern-set命令會以兩個指定的規則運算式模式建立規則運算式模式集。aws wafv2 create-regex-pattern-set \ --nameregexPatterSet01\ --scopeREGIONAL\ --description 'Test web-acl' \ --regular-expression-list '[{"RegexString": "/[0-9]*/"},{"RegexString": "/[a-z]*/"}]'輸出:
{ "Summary":{ "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/regexpatternset/regexPatterSet01/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"Test web-acl", "Name":"regexPatterSet01", "LockToken":"0bc01e21-03c9-4b98-9433-6229cbf1ef1c", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateRegexPatternSet
。
-
以下程式碼範例顯示如何使用 create-rule-group。
- AWS CLI
-
建立用於 Web ACL 中的自訂規則群組
下列
create-rule-group命令會建立自訂規則群組以供區域使用。群組的規則陳述式是以 JSON 格式的檔案提供。aws wafv2 create-rule-group \ --name"TestRuleGroup"\ --scopeREGIONAL\ --capacity250\ --rulesfile://waf-rule.json\ --visibility-configSampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=TestRuleGroupMetrics\ --regionus-west-2檔案的內容://waf-rule.json:
[ { "Name":"basic-rule", "Priority":0, "Statement":{ "AndStatement":{ "Statements":[ { "ByteMatchStatement":{ "SearchString":"example.com", "FieldToMatch":{ "SingleHeader":{ "Name":"host" } }, "TextTransformations":[ { "Priority":0, "Type":"LOWERCASE" } ], "PositionalConstraint":"EXACTLY" } }, { "GeoMatchStatement":{ "CountryCodes":[ "US", "IN" ] } } ] } }, "Action":{ "Allow":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"basic-rule" } } ]輸出:
{ "Summary":{ "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/rulegroup/TestRuleGroup/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"", "Name":"TestRuleGroup", "LockToken":"7b3bcec2-374e-4c5a-b2b9-563bf47249f0", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理自己的規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateRuleGroup
。
-
以下程式碼範例顯示如何使用 create-web-acl。
- AWS CLI
-
建立 Web ACL
下列
create-web-acl命令會建立 Web ACL 以供區域使用。Web ACL 的規則陳述式是以 JSON 格式的檔案提供。aws wafv2 create-web-acl \ --nameTestWebAcl\ --scopeREGIONAL\ --default-actionAllow={}\ --visibility-configSampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=TestWebAclMetrics\ --rulesfile://waf-rule.json\ --regionus-west-2檔案的內容://waf-rule.json:
[ { "Name":"basic-rule", "Priority":0, "Statement":{ "AndStatement":{ "Statements":[ { "ByteMatchStatement":{ "SearchString":"example.com", "FieldToMatch":{ "SingleHeader":{ "Name":"host" } }, "TextTransformations":[ { "Priority":0, "Type":"LOWERCASE" } ], "PositionalConstraint":"EXACTLY" } }, { "GeoMatchStatement":{ "CountryCodes":[ "US", "IN" ] } } ] } }, "Action":{ "Allow":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"basic-rule" } } ]輸出:
{ "Summary":{ "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/TestWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"", "Name":"TestWebAcl", "LockToken":"2294b3a1-eb60-4aa0-a86f-a3ae04329de9", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 管理人員指南》中的管理和使用 Web 存取控制清單 (Web ACL)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateWebAcl
。
-
以下程式碼範例顯示如何使用 delete-ip-set。
- AWS CLI
-
刪除 IP 集合
以下
delete-ip-set會刪除指定的 IP 集。此呼叫需要一個您可以從呼叫取得的 ID、list-ip-sets,以及一個您可以從呼叫、list-ip-sets和get-ip-set取得的鎖定權杖。aws wafv2 delete-ip-set \ --nametest1\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-token46851772-db6f-459d-9385-49428812e357此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteIpSet
。
-
以下程式碼範例顯示如何使用 delete-logging-configuration。
- AWS CLI
-
停用 Web ACL 記錄
以下
delete-logging-configuration會從指定的 Web ACL 中移除任何記錄組態。aws wafv2 delete-logging-configuration \ --resource-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的記錄 Web ACL 流量資訊。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteLoggingConfiguration
。
-
以下程式碼範例顯示如何使用 delete-regex-pattern-set。
- AWS CLI
-
刪除規則運算式模式集
以下
delete-regex-pattern-set更新所指定規則運算式模式集的設定。此呼叫需要一個您可以從呼叫取得的 ID、list-regex-pattern-sets,以及一個您可以從呼叫list-regex-pattern-sets或呼叫get-regex-pattern-set取得的鎖定權杖。aws wafv2 delete-regex-pattern-set \ --nameregexPatterSet01\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-token0bc01e21-03c9-4b98-9433-6229cbf1ef1c此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteRegexPatternSet
。
-
以下程式碼範例顯示如何使用 delete-rule-group。
- AWS CLI
-
刪除自訂規則群組
以下
delete-rule-group會刪除指定的自訂規則群組。此呼叫需要一個您可以從呼叫取得的 ID、list-rule-groups,以及一個您可以從呼叫list-rule-groups或呼叫get-rule-group取得的鎖定權杖。aws wafv2 delete-rule-group \ --nameTestRuleGroup\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-token7b3bcec2-0000-0000-0000-563bf47249f0此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理自己的規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteRuleGroup
。
-
以下程式碼範例顯示如何使用 delete-web-acl。
- AWS CLI
-
刪除 Web ACL
下列
delete-web-acl會將指定的 Web ACL 從您的帳戶中刪除。只有當 Web ACL 未與任何資源關聯時,才能將其刪除。此呼叫需要一個您可以從呼叫取得的 ID、list-web-acls,以及一個您可以從呼叫list-web-acls或呼叫get-web-acl取得的鎖定權杖。aws wafv2 delete-web-acl \ --nametest\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-tokenebab4ed2-155e-4c9a-9efb-e4c45665b1f5此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 管理人員指南》中的管理和使用 Web 存取控制清單 (Web ACL)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteWebAcl
。
-
以下程式碼範例顯示如何使用 describe-managed-rule-group。
- AWS CLI
-
擷取受管規則群組的描述
以下
describe-managed-rule-group會擷取 AWS 受管規則群組的描述。aws wafv2 describe-managed-rule-group \ --vendor-nameAWS\ --nameAWSManagedRulesCommonRuleSet\ --scopeREGIONAL輸出:
{ "Capacity": 700, "Rules": [ { "Name": "NoUserAgent_HEADER", "Action": { "Block": {} } }, { "Name": "UserAgent_BadBots_HEADER", "Action": { "Block": {} } }, { "Name": "SizeRestrictions_QUERYSTRING", "Action": { "Block": {} } }, { "Name": "SizeRestrictions_Cookie_HEADER", "Action": { "Block": {} } }, { "Name": "SizeRestrictions_BODY", "Action": { "Block": {} } }, { "Name": "SizeRestrictions_URIPATH", "Action": { "Block": {} } }, { "Name": "EC2MetaDataSSRF_BODY", "Action": { "Block": {} } }, { "Name": "EC2MetaDataSSRF_COOKIE", "Action": { "Block": {} } }, { "Name": "EC2MetaDataSSRF_URIPATH", "Action": { "Block": {} } }, { "Name": "EC2MetaDataSSRF_QUERYARGUMENTS", "Action": { "Block": {} } }, { "Name": "GenericLFI_QUERYARGUMENTS", "Action": { "Block": {} } }, { } "Name": "GenericLFI_URIPATH", "Action": { "Block": {} } }, { "Name": "GenericLFI_BODY", "Action": { "Block": {} } }, { "Name": "RestrictedExtensions_URIPATH", "Action": { "Block": {} } }, { "Name": "RestrictedExtensions_QUERYARGUMENTS", "Action": { "Block": {} } }, { "Name": "GenericRFI_QUERYARGUMENTS", "Action": { "Block": {} } }, { "Name": "GenericRFI_BODY", "Action": { "Block": {} } }, { "Name": "GenericRFI_URIPATH", "Action": { "Block": {} } }, { "Name": "CrossSiteScripting_COOKIE", "Action": { "Block": {} } }, { "Name": "CrossSiteScripting_QUERYARGUMENTS", "Action": { "Block": {} } }, { "Name": "CrossSiteScripting_BODY", "Action": { "Block": {} } }, { "Name": "CrossSiteScripting_URIPATH", "Action": { "Block": {} } } ] }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DescribeManagedRuleGroup
。
-
以下程式碼範例顯示如何使用 disassociate-web-acl。
- AWS CLI
-
取消 Web ACL 與區域 AWS 資源的關聯
下列
disassociate-web-acl範例會從指定的 Application Load Balancer 中移除任何現有的 Web ACL 關聯。aws wafv2 disassociate-web-acl \ --resource-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/waf-cli-alb/1ea17125f8b25a2a\ --regionus-west-2此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的將 Web ACL 與 AWS 資源關聯或取消關聯。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DisassociateWebAcl
。
-
以下程式碼範例顯示如何使用 get-ip-set。
- AWS CLI
-
擷取特定 IP 集
以下
get-ip-set會擷取具有指定名稱、範圍和 ID 的 IP 集。您可以從命令create-ip-set和list-ip-sets中取得 IP 集的 ID。aws wafv2 get-ip-set \ --nametestip\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111輸出:
{ "IPSet":{ "Description":"", "Name":"testip", "IPAddressVersion":"IPV4", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE1111", "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/ipset/testip/a1b2c3d4-5678-90ab-cdef-EXAMPLE1111", "Addresses":[ "192.0.2.0/16" ] }, "LockToken":"447e55ac-2396-4c6d-b9f9-86b67c17f8b5" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetIpSet
。
-
以下程式碼範例顯示如何使用 get-logging-configuration。
- AWS CLI
-
擷取 Web ACL 的記錄組態
以下
get-logging-configuration會擷取所指定 Web ACL 的記錄組態。aws wafv2 get-logging-configuration \ --resource-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222\ --regionus-west-2輸出:
{ "LoggingConfiguration":{ "ResourceArn":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "RedactedFields":[ { "Method":{ } } ], "LogDestinationConfigs":[ "arn:aws:firehose:us-west-2:123456789012:deliverystream/aws-waf-logs-custom-transformation" ] } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的記錄 Web ACL 流量資訊。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetLoggingConfiguration
。
-
以下程式碼範例顯示如何使用 get-rate-based-statement-managed-keys。
- AWS CLI
-
擷取由速率型規則封鎖的 IP 位址清單
以下
get-rate-based-statement-managed-keys會擷取目前由用於區域應用程式的速率型規則所封鎖的 IP 地址。aws wafv2 get-rate-based-statement-managed-keys \ --scopeREGIONAL\ --web-acl-nametestwebacl2\ --web-acl-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --rule-nameratebasedtest輸出:
{ "ManagedKeysIPV4":{ "IPAddressVersion":"IPV4", "Addresses":[ "198.51.100.0/32" ] }, "ManagedKeysIPV6":{ "IPAddressVersion":"IPV6", "Addresses":[ ] } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的速率型規則陳述式。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetRateBasedStatementManagedKeys
。
-
以下程式碼範例顯示如何使用 get-regex-pattern-set。
- AWS CLI
-
擷取特定規則運算式模式集
以下
get-regex-pattern-set會擷取具有指定名稱、範圍、區域和 ID 的規則運算式模式集。您可以從命令create-regex-pattern-set和list-regex-pattern-sets中取得規則運算式模式集的 ID。aws wafv2 get-regex-pattern-set \ --nameregexPatterSet01\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --regionus-west-2輸出:
{ "RegexPatternSet":{ "Description":"Test web-acl", "RegularExpressionList":[ { "RegexString":"/[0-9]*/" }, { "RegexString":"/[a-z]*/" } ], "Name":"regexPatterSet01", "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/regexpatternset/regexPatterSet01/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, "LockToken":"c8abf33f-b6fc-46ae-846e-42f994d57b29" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetRegexPatternSet
。
-
以下程式碼範例顯示如何使用 get-rule-group。
- AWS CLI
-
擷取特定自訂規則群組
以下
get-rule-group會擷取具有指定名稱、範圍和 ID 的自訂規則群組。您可以從命令create-rule-group和list-rule-groups取得規則群組的 ID。aws wafv2 get-rule-group \ --nameff\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111輸出:
{ "RuleGroup":{ "Capacity":1, "Description":"", "Rules":[ { "Priority":0, "Action":{ "Block":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"jj" }, "Name":"jj", "Statement":{ "SizeConstraintStatement":{ "ComparisonOperator":"LE", "TextTransformations":[ { "Priority":0, "Type":"NONE" } ], "FieldToMatch":{ "UriPath":{ } }, "Size":7 } } } ], "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"ff" }, "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/rulegroup/ff/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Name":"ff" }, "LockToken":"485458c9-1830-4234-af31-ec4d52ced1b3" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理自己的規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetRuleGroup
。
-
以下程式碼範例顯示如何使用 get-sampled-requests。
- AWS CLI
-
擷取 Web ACL 的 Web 請求範例
以下
get-sampled-requests會擷取指定 Web ACL、規則指標和時間範圍的範例 Web 請求。aws wafv2 get-sampled-requests \ --web-acl-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --rule-metric-nameAWS-AWSManagedRulesSQLiRuleSet\ --scope=REGIONAL \ --time-windowStartTime=2020-02-12T20:00Z,EndTime=2020-02-12T21:10Z\ --max-items100輸出:
{ "TimeWindow": { "EndTime": 1581541800.0, "StartTime": 1581537600.0 }, "SampledRequests": [ { "Action": "BLOCK", "Timestamp": 1581541799.564, "RuleNameWithinRuleGroup": "AWS#AWSManagedRulesSQLiRuleSet#SQLi_BODY", "Request": { "Country": "US", "URI": "/", "Headers": [ { "Name": "Host", "Value": "alb-test-1EXAMPLE1.us-east-1.elb.amazonaws.com" }, { "Name": "Content-Length", "Value": "7456" }, { "Name": "User-Agent", "Value": "curl/7.53.1" }, { "Name": "Accept", "Value": "/" }, { "Name": "Content-Type", "Value": "application/x-www-form-urlencoded" } ], "ClientIP": "198.51.100.08", "Method": "POST", "HTTPVersion": "HTTP/1.1" }, "Weight": 1 }, { "Action": "BLOCK", "Timestamp": 1581541799.988, "RuleNameWithinRuleGroup": "AWS#AWSManagedRulesSQLiRuleSet#SQLi_BODY", "Request": { "Country": "US", "URI": "/", "Headers": [ { "Name": "Host", "Value": "alb-test-1EXAMPLE1.us-east-1.elb.amazonaws.com" }, { "Name": "Content-Length", "Value": "7456" }, { "Name": "User-Agent", "Value": "curl/7.53.1" }, { "Name": "Accept", "Value": "/" }, { "Name": "Content-Type", "Value": "application/x-www-form-urlencoded" } ], "ClientIP": "198.51.100.08", "Method": "POST", "HTTPVersion": "HTTP/1.1" }, "Weight": 3 }, { "Action": "BLOCK", "Timestamp": 1581541799.846, "RuleNameWithinRuleGroup": "AWS#AWSManagedRulesSQLiRuleSet#SQLi_BODY", "Request": { "Country": "US", "URI": "/", "Headers": [ { "Name": "Host", "Value": "alb-test-1EXAMPLE1.us-east-1.elb.amazonaws.com" }, { "Name": "Content-Length", "Value": "7456" }, { "Name": "User-Agent", "Value": "curl/7.53.1" }, { "Name": "Accept", "Value": "/" }, { "Name": "Content-Type", "Value": "application/x-www-form-urlencoded" } ], "ClientIP": "198.51.100.08", "Method": "POST", "HTTPVersion": "HTTP/1.1" }, "Weight": 1 }, { "Action": "BLOCK", "Timestamp": 1581541799.4, "RuleNameWithinRuleGroup": "AWS#AWSManagedRulesSQLiRuleSet#SQLi_BODY", "Request": { "Country": "US", "URI": "/", "Headers": [ { "Name": "Host", "Value": "alb-test-1EXAMPLE1.us-east-1.elb.amazonaws.com" }, { "Name": "Content-Length", "Value": "7456" }, { "Name": "User-Agent", "Value": "curl/7.53.1" }, { "Name": "Accept", "Value": "/" }, { "Name": "Content-Type", "Value": "application/x-www-form-urlencoded" } ], "ClientIP": "198.51.100.08", "Method": "POST", "HTTPVersion": "HTTP/1.1" }, "Weight": 1 } ], "PopulationSize": 4 }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的檢視 Web 請求的範例。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetSampledRequests
。
-
以下程式碼範例顯示如何使用 get-web-acl-for-resource。
- AWS CLI
-
擷取與 AWS 資源關聯的 Web ACL
以下
get-web-acl-for-resource會擷取與指定資源相關聯之 Web ACL 的 JSON。aws wafv2 get-web-acl-for-resource \ --resource-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/waf-cli-alb/1ea17125f8b25a2a輸出:
{ "WebACL":{ "Capacity":3, "Description":"", "Rules":[ { "Priority":1, "Action":{ "Block":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"testrule01" }, "Name":"testrule01", "Statement":{ "AndStatement":{ "Statements":[ { "ByteMatchStatement":{ "PositionalConstraint":"EXACTLY", "TextTransformations":[ { "Priority":0, "Type":"NONE" } ], "SearchString":"dGVzdHN0cmluZw==", "FieldToMatch":{ "UriPath":{ } } } }, { "SizeConstraintStatement":{ "ComparisonOperator":"EQ", "TextTransformations":[ { "Priority":0, "Type":"NONE" } ], "FieldToMatch":{ "QueryString":{ } }, "Size":0 } } ] } } } ], "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"test01" }, "DefaultAction":{ "Allow":{ } }, "Id":"9a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 ", "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test01/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 ", "Name":"test01" } }如需詳細資訊,請參閱《AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的將 Web ACL 與 AWS 資源關聯或取消關聯。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetWebAclForResource
。
-
以下程式碼範例顯示如何使用 get-web-acl。
- AWS CLI
-
擷取 Web ACL
以下
get-web-acl會擷取具有指定名稱、範圍和 ID 的 Web ACL。您可以從命令create-web-acl和list-web-acls取得 Web ACL 的 ID。aws wafv2 get-web-acl \ --nametest01\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111輸出:
{ "WebACL":{ "Capacity":3, "Description":"", "Rules":[ { "Priority":1, "Action":{ "Block":{ } }, "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"testrule01" }, "Name":"testrule01", "Statement":{ "AndStatement":{ "Statements":[ { "ByteMatchStatement":{ "PositionalConstraint":"EXACTLY", "TextTransformations":[ { "Priority":0, "Type":"NONE" } ], "SearchString":"dGVzdHN0cmluZw==", "FieldToMatch":{ "UriPath":{ } } } }, { "SizeConstraintStatement":{ "ComparisonOperator":"EQ", "TextTransformations":[ { "Priority":0, "Type":"NONE" } ], "FieldToMatch":{ "QueryString":{ } }, "Size":0 } } ] } } } ], "VisibilityConfig":{ "SampledRequestsEnabled":true, "CloudWatchMetricsEnabled":true, "MetricName":"test01" }, "DefaultAction":{ "Allow":{ } }, "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test01/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Name":"test01" }, "LockToken":"e3db7e2c-d58b-4ee6-8346-6aec5511c6fb" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 管理人員指南》中的管理和使用 Web 存取控制清單 (Web ACL)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetWebAcl
。
-
以下程式碼範例顯示如何使用 list-available-managed-rule-groups。
- AWS CLI
-
擷取受管規則群組
以下
list-available-managed-rule-groups會傳回目前可用於 Web ACL 的所有受管規則群組清單。aws wafv2 list-available-managed-rule-groups \ --scopeREGIONAL輸出:
{ "ManagedRuleGroups": [ { "VendorName": "AWS", "Name": "AWSManagedRulesCommonRuleSet", "Description": "Contains rules that are generally applicable to web applications. This provides protection against exploitation of a wide range of vulnerabilities, including those described in OWASP publications and common Common Vulnerabilities and Exposures (CVE)." }, { "VendorName": "AWS", "Name": "AWSManagedRulesAdminProtectionRuleSet", "Description": "Contains rules that allow you to block external access to exposed admin pages. This may be useful if you are running third-party software or would like to reduce the risk of a malicious actor gaining administrative access to your application." }, { "VendorName": "AWS", "Name": "AWSManagedRulesKnownBadInputsRuleSet", "Description": "Contains rules that allow you to block request patterns that are known to be invalid and are associated with exploitation or discovery of vulnerabilities. This can help reduce the risk of a malicious actor discovering a vulnerable application." }, { "VendorName": "AWS", "Name": "AWSManagedRulesSQLiRuleSet", "Description": "Contains rules that allow you to block request patterns associated with exploitation of SQL databases, like SQL injection attacks. This can help prevent remote injection of unauthorized queries." }, { "VendorName": "AWS", "Name": "AWSManagedRulesLinuxRuleSet", "Description": "Contains rules that block request patterns associated with exploitation of vulnerabilities specific to Linux, including LFI attacks. This can help prevent attacks that expose file contents or execute code for which the attacker should not have had access." }, { "VendorName": "AWS", "Name": "AWSManagedRulesUnixRuleSet", "Description": "Contains rules that block request patterns associated with exploiting vulnerabilities specific to POSIX/POSIX-like OS, including LFI attacks. This can help prevent attacks that expose file contents or execute code for which access should not been allowed." }, { "VendorName": "AWS", "Name": "AWSManagedRulesWindowsRuleSet", "Description": "Contains rules that block request patterns associated with exploiting vulnerabilities specific to Windows, (e.g., PowerShell commands). This can help prevent exploits that allow attacker to run unauthorized commands or execute malicious code." }, { "VendorName": "AWS", "Name": "AWSManagedRulesPHPRuleSet", "Description": "Contains rules that block request patterns associated with exploiting vulnerabilities specific to the use of the PHP, including injection of unsafe PHP functions. This can help prevent exploits that allow an attacker to remotely execute code or commands." }, { "VendorName": "AWS", "Name": "AWSManagedRulesWordPressRuleSet", "Description": "The WordPress Applications group contains rules that block request patterns associated with the exploitation of vulnerabilities specific to WordPress sites." }, { "VendorName": "AWS", "Name": "AWSManagedRulesAmazonIpReputationList", "Description": "This group contains rules that are based on Amazon threat intelligence. This is useful if you would like to block sources associated with bots or other threats." } ] }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListAvailableManagedRuleGroups
。
-
以下程式碼範例顯示如何使用 list-ip-sets。
- AWS CLI
-
擷取 IP 集清單
以下
list-ip-sets會擷取該帳戶其具有區域範圍的所有 IP 集。aws wafv2 list-ip-sets \ --scopeREGIONAL輸出:
{ "IPSets":[ { "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/ipset/testip/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"", "Name":"testip", "LockToken":"0674c84b-0304-47fe-8728-c6bff46af8fc", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 " } ], "NextMarker":"testip" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListIpSets
。
-
以下程式碼範例顯示如何使用 list-logging-configurations。
- AWS CLI
-
擷取區域的所有記錄組態清單
以下
list-logging-configurations會擷取範圍限定在us-west-2區域中供區域使用之 Web ACL 的所有記錄組態。aws wafv2 list-logging-configurations \ --scopeREGIONAL\ --regionus-west-2輸出:
{ "LoggingConfigurations":[ { "ResourceArn":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-2/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "RedactedFields":[ { "QueryString":{ } } ], "LogDestinationConfigs":[ "arn:aws:firehose:us-west-2:123456789012:deliverystream/aws-waf-logs-test" ] }, { "ResourceArn":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "RedactedFields":[ { "Method":{ } } ], "LogDestinationConfigs":[ "arn:aws:firehose:us-west-2:123456789012:deliverystream/aws-waf-logs-custom-transformation" ] } ] }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的記錄 Web ACL 流量資訊。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListLoggingConfigurations
。
-
以下程式碼範例顯示如何使用 list-regex-pattern-sets。
- AWS CLI
-
擷取規則運算式模式集清單
下列
list-regex-pattern-sets會擷取區域us-west-2中所定義帳戶的所有規則運算式模式集。aws wafv2 list-regex-pattern-sets \ --scopeREGIONAL\ --regionus-west-2輸出:
{ "NextMarker":"regexPatterSet01", "RegexPatternSets":[ { "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/regexpatternset/regexPatterSet01/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"Test web-acl", "Name":"regexPatterSet01", "LockToken":"f17743f7-0000-0000-0000-19a8b93bfb01", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListRegexPatternSets
。
-
以下程式碼範例顯示如何使用 list-resources-for-web-acl。
- AWS CLI
-
擷取與 Web ACL 相關聯的資源
以下
list-resources-for-web-acl會擷取目前與區域us-west-2中所指定 Web ACL 相關聯的 API Gateway REST API 資源。aws wafv2 list-resources-for-web-acl \ --web-acl-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/TestWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --resource-typeAPI_GATEWAY\ --regionus-west-2輸出:
{ "ResourceArns": [ "arn:aws:apigateway:us-west-2::/restapis/EXAMPLE111/stages/testing" ] }如需詳細資訊,請參閱《AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的將 Web ACL 與 AWS 資源關聯或取消關聯。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListResourcesForWebAcl
。
-
以下程式碼範例顯示如何使用 list-rule-groups。
- AWS CLI
-
擷取自訂規則群組清單
以下
list-rule-groups會擷取為所指定範圍和區域位置的帳戶定義的所有自訂規則群組。aws wafv2 list-rule-groups \ --scopeREGIONAL\ --regionus-west-2輸出:
{ "RuleGroups":[ { "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/rulegroup/TestRuleGroup/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"", "Name":"TestRuleGroup", "LockToken":"1eb5ec48-0000-0000-0000-ee9b906c541e", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, { "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/rulegroup/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "Description":"", "Name":"test", "LockToken":"b0f4583e-998b-4880-9069-3fbe45738b43", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" } ], "NextMarker":"test" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理自己的規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListRuleGroups
。
-
以下程式碼範例顯示如何使用 list-tags-for-resource。
- AWS CLI
-
擷取 AWS WAF 資源的所有標籤
以下
list-tags-for-resource會擷取所指定 Web ACL 的所有標籤鍵值對清單。aws wafv2 list-tags-for-resource \ --resource-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/testwebacl2/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111輸出:
{ "NextMarker":"", "TagInfoForResource":{ "ResourceARN":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/testwebacl2/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "TagList":[ ] } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 AWS WAF 入門。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListTagsForResource
。
-
以下程式碼範例顯示如何使用 list-web-acls。
- AWS CLI
-
擷取範圍的 Web ACL
以下
list-web-acls會擷取為所指定範圍的帳戶定義的所有 Web ACL。aws wafv2 list-web-acls \ --scopeREGIONAL輸出:
{ "NextMarker":"Testt", "WebACLs":[ { "ARN":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/Testt/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Description":"sssss", "Name":"Testt", "LockToken":"7f36cb30-74ef-4cff-8cd4-a77e1aba1746", "Id":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 管理人員指南》中的管理和使用 Web 存取控制清單 (Web ACL)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 ListWebAcls
。
-
以下程式碼範例顯示如何使用 put-logging-configuration。
- AWS CLI
-
將記錄組態新增至 Web ACL
以下
put-logging-configuration會將 Amazon Kinesis Data Firehose 記錄組態aws-waf-logs-custom-transformation新增至指定的 Web ACL,其中日誌中沒有任何已修訂的欄位。aws wafv2 put-logging-configuration \ --logging-configurationResourceArn=arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111,LogDestinationConfigs=arn:aws:firehose:us-west-2:123456789012:deliverystream/aws-waf-logs-custom-transformation\ --regionus-west-2輸出:
{ "LoggingConfiguration":{ "ResourceArn":"arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "LogDestinationConfigs":[ "arn:aws:firehose:us-west-2:123456789012:deliverystream/aws-waf-logs-custom-transformation" ] } }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的記錄 Web ACL 流量資訊。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 PutLoggingConfiguration
。
-
以下程式碼範例顯示如何使用 tag-resource。
- AWS CLI
-
將標籤新增至 AWS WAF 資源
下列
tag-resource範例會將具有Name的索引鍵且值設定為AWSWAF的標籤新增至指定的 Web API。aws wafv2 tag-resource \ --resource-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/apiGatewayWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --tagsKey=Name,Value=AWSWAF此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 AWS WAF 入門。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 TagResource
。
-
以下程式碼範例顯示如何使用 untag-resource。
- AWS CLI
-
將標籤從 AWS WAF 資源中移除
下列
untag-resource範例會將具有索引鍵KeyName的標籤從指定的 Web ACL 中移除。aws wafv2 untag-resource \ --resource-arnarn:aws:wafv2:us-west-2:123456789012:regional/webacl/apiGatewayWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --tag-keys"KeyName"此命令不會產生輸出。
如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 AWS WAF 入門。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 UntagResource
。
-
以下程式碼範例顯示如何使用 update-ip-set。
- AWS CLI
-
修改現有 IP 集的設定
以下
update-ip-set會更新所指定 IP 集的設定。此呼叫需要一個您可以從呼叫取得的 ID、list-ip-sets,以及一個您可以從呼叫、list-ip-sets和get-ip-set取得的鎖定權杖。此呼叫也會傳回鎖定權杖,供您用於後續更新。aws wafv2 update-ip-set \ --nametestip\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --addresses198.51.100.0/16\ --lock-token447e55ac-2396-4c6d-b9f9-86b67c17f8b5輸出:
{ "NextLockToken": "0674c84b-0304-47fe-8728-c6bff46af8fc" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 UpdateIpSet
。
-
以下程式碼範例顯示如何使用 update-regex-pattern-set。
- AWS CLI
-
修改現有規則運算式模式集的設定
以下
update-regex-pattern-set更新所指定規則運算式模式集的設定。此呼叫需要一個您可以從呼叫取得的 ID、list-regex-pattern-sets,以及一個您可以從呼叫、list-regex-pattern-sets和get-regex-pattern-set取得的鎖定權杖。此呼叫也會傳回鎖定權杖,供您用於後續更新。aws wafv2 update-regex-pattern-set \ --nameExampleRegex\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --regular-expression-list RegexString="^.+$" \ --lock-tokened207e9c-82e9-4a77-aadd-81e6173ab7eb輸出:
{ "NextLockToken": "12ebc73e-fa68-417d-a9b8-2bdd761a4fa5" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的 IP 集合和規則運算式模式集。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 UpdateRegexPatternSet
。
-
以下程式碼範例顯示如何使用 update-rule-group。
- AWS CLI
-
更新自訂規則群組
以下
update-rule-group會變更現有自訂規則群組的可見性組態。此呼叫需要一個您可以從呼叫取得的 ID、list-rule-groups,以及一個您可以從呼叫、list-rule-groups和get-rule-group取得的鎖定權杖。此呼叫也會傳回鎖定權杖,供您用於後續更新。aws wafv2 update-rule-group \ --nameTestRuleGroup\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-token7b3bcec2-0000-0000-0000-563bf47249f0\ --visibility-configSampledRequestsEnabled=false,CloudWatchMetricsEnabled=false,MetricName=TestMetricsForRuleGroup\ --regionus-west-2輸出:
{ "NextLockToken": "1eb5ec48-0000-0000-0000-ee9b906c541e" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 開發人員指南》中的管理自己的規則群組。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 UpdateRuleGroup
。
-
以下程式碼範例顯示如何使用 update-web-acl。
- AWS CLI
-
更新 Web ACL
下列
update-web-acl會變更現有 Web ACL 的設定。此呼叫需要一個您可以從呼叫取得的 ID、list-web-acls,以及一個您可以從呼叫get-web-acl取得的鎖定權杖和其他設定。此呼叫也會傳回鎖定權杖,供您用於後續更新。aws wafv2 update-web-acl \ --nameTestWebAcl\ --scopeREGIONAL\ --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --lock-token2294b3a1-0000-0000-0000-a3ae04329de9\ --default-actionBlock={}\ --visibility-configSampledRequestsEnabled=false,CloudWatchMetricsEnabled=false,MetricName=NewMetricTestWebAcl\ --rulesfile://waf-rule.json\ --regionus-west-2輸出:
{ "NextLockToken": "714a0cfb-0000-0000-0000-2959c8b9a684" }如需詳細資訊,請參閱《AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced 管理人員指南》中的管理和使用 Web 存取控制清單 (Web ACL)。
-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 UpdateWebAcl
。
-