

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS WAFV2 使用 的範例 AWS CLI
<a name="cli_wafv2_code_examples"></a>

下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 來執行動作和實作常見案例 AWS WAFV2。

*Actions* 是大型程式的程式碼摘錄，必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數，但您可以在其相關情境中查看內容中的動作。

每個範例均包含完整原始碼的連結，您可在連結中找到如何設定和執行內容中程式碼的相關指示。

**Topics**
+ [動作](#actions)

## 動作
<a name="actions"></a>

### `associate-web-acl`
<a name="wafv2_AssociateWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `associate-web-acl`。

**AWS CLI**  
**將 Web ACL 與區域 AWS 資源建立關聯**  
下列 `associate-web-acl` 範例會建立所指定 web ACL 與 Application Load Balancer 的關聯。  

```
aws wafv2 associate-web-acl \
    --web-acl-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --resource-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/waf-cli-alb/1ea17125f8b25a2a \
    --region us-west-2
```
此命令不會產生輸出。  
如需詳細資訊，請參閱*AWS 《WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide*》中的[將 Web ACL 與 AWS 資源建立關聯或取消關聯](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-associating-aws-resource.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [AssociateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/associate-web-acl.html)。

### `check-capacity`
<a name="wafv2_CheckCapacity_cli_topic"></a>

以下程式碼範例顯示如何使用 `check-capacity`。

**AWS CLI**  
**取得規則集所使用的容量**  
以下 `check-capacity` 會擷取規則集的容量需求，其中包含速率型規則陳述式，以及包含巢狀規則的 AND 規則陳述式。  

```
aws wafv2 check-capacity \
    --scope REGIONAL \
    --rules file://waf-rule-list.json \
    --region us-west-2
```
file://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、Firewall Manager 和 Shield Advanced Developer Guide 中的 WAF Web ACL 容量單位 (WCU)](https://docs.aws.amazon.com/waf/latest/developerguide/how-aws-waf-works.html#aws-waf-capacity-units)。 *AWS AWS AWS *  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CheckCapacity](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/check-capacity.html)。

### `create-ip-set`
<a name="wafv2_CreateIpSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-ip-set`。

**AWS CLI**  
**建立用於 Web ACL 和規則群組的 IP 集**  
下列 `create-ip-set` 命令會建立具有單一地址範圍規格的 IP 集。  

```
aws wafv2 create-ip-set \
    --name testip \
    --scope REGIONAL \
    --ip-address-version IPV4 \
    --addresses 198.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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateIpSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/create-ip-set.html)。

### `create-regex-pattern-set`
<a name="wafv2_CreateRegexPatternSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-regex-pattern-set`。

**AWS CLI**  
**建立用於 Web ACL 和規則群組的規則運算式模式集**  
下列 `create-regex-pattern-set` 命令會以兩個指定的規則運算式模式建立規則運算式模式集。  

```
aws wafv2 create-regex-pattern-set \
    --name regexPatterSet01 \
    --scope REGIONAL \
    --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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateRegexPatternSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/create-regex-pattern-set.html)。

### `create-rule-group`
<a name="wafv2_CreateRuleGroup_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-rule-group`。

**AWS CLI**  
**建立用於 Web ACL 中的自訂規則群組**  
下列 `create-rule-group` 命令會建立自訂規則群組以供區域使用。群組的規則陳述式是以 JSON 格式的檔案提供。  

```
aws wafv2 create-rule-group \
    --name "TestRuleGroup" \
    --scope REGIONAL \
    --capacity 250 \
    --rules file://waf-rule.json \
    --visibility-config SampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=TestRuleGroupMetrics \
    --region us-west-2
```
file://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 Developer Guide* 中的[管理您自己的規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-user-created-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateRuleGroup](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/create-rule-group.html)。

### `create-web-acl`
<a name="wafv2_CreateWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-web-acl`。

**AWS CLI**  
**建立 Web ACL**  
下列 `create-web-acl` 命令會建立 Web ACL 以供區域使用。Web ACL 的規則陳述式是以 JSON 格式的檔案提供。  

```
aws wafv2 create-web-acl \
    --name TestWebAcl \
    --scope REGIONAL \
    --default-action Allow={} \
    --visibility-config SampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=TestWebAclMetrics \
    --rules file://waf-rule.json \
    --region us-west-2
```
file://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 Developer Guide 中的管理和使用 Web 存取控制清單 (Web ACL)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/create-web-acl.html)。

### `delete-ip-set`
<a name="wafv2_DeleteIpSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name test1 \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token 46851772-db6f-459d-9385-49428812e357
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteIpSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/delete-ip-set.html)。

### `delete-logging-configuration`
<a name="wafv2_DeleteLoggingConfiguration_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-logging-configuration`。

**AWS CLI**  
**停用 Web ACL 的記錄**  
以下 `delete-logging-configuration` 會從指定的 Web ACL 中移除任何記錄組態。  

```
aws wafv2 delete-logging-configuration \
    --resource-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide* 中的[記錄 Web ACL 流量資訊](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteLoggingConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/delete-logging-configuration.html)。

### `delete-regex-pattern-set`
<a name="wafv2_DeleteRegexPatternSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-regex-pattern-set`。

**AWS CLI**  
**刪除 regex 模式集**  
以下 `delete-regex-pattern-set` 更新所指定規則運算式模式集的設定。此呼叫需要一個您可以從呼叫取得的 ID、`list-regex-pattern-sets`，以及一個您可以從呼叫 `list-regex-pattern-sets` 或呼叫 `get-regex-pattern-set` 取得的鎖定權杖。  

```
aws wafv2 delete-regex-pattern-set \
    --name regexPatterSet01 \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token 0bc01e21-03c9-4b98-9433-6229cbf1ef1c
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteRegexPatternSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/delete-regex-pattern-set.html)。

### `delete-rule-group`
<a name="wafv2_DeleteRuleGroup_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-rule-group`。

**AWS CLI**  
**刪除自訂規則群組**  
以下 `delete-rule-group` 會刪除指定的自訂規則群組。此呼叫需要一個您可以從呼叫取得的 ID、`list-rule-groups`，以及一個您可以從呼叫 `list-rule-groups` 或呼叫 `get-rule-group` 取得的鎖定權杖。  

```
aws wafv2 delete-rule-group \
    --name TestRuleGroup \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token 7b3bcec2-0000-0000-0000-563bf47249f0
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide* 中的[管理您自己的規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-user-created-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteRuleGroup](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/delete-rule-group.html)。

### `delete-web-acl`
<a name="wafv2_DeleteWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name test \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token ebab4ed2-155e-4c9a-9efb-e4c45665b1f5
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的管理和使用 Web 存取控制清單 (Web ACL)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/delete-web-acl.html)。

### `describe-managed-rule-group`
<a name="wafv2_DescribeManagedRuleGroup_cli_topic"></a>

以下程式碼範例顯示如何使用 `describe-managed-rule-group`。

**AWS CLI**  
**擷取受管規則群組的描述**  
以下內容會`describe-managed-rule-group`擷取 AWS 受管規則群組的描述。  

```
aws wafv2 describe-managed-rule-group \
    --vendor-name AWS \
    --name AWSManagedRulesCommonRuleSet \
    --scope REGIONAL
```
輸出：  

```
{
    "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 Developer Guide* 中的[受管規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DescribeManagedRuleGroup](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/describe-managed-rule-group.html)。

### `disassociate-web-acl`
<a name="wafv2_DisassociateWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `disassociate-web-acl`。

**AWS CLI**  
**取消 Web ACL 與區域 AWS 資源的關聯**  
下列 `disassociate-web-acl` 範例會從指定的 Application Load Balancer 中移除任何現有的 Web ACL 關聯。  

```
aws wafv2 disassociate-web-acl \
    --resource-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/waf-cli-alb/1ea17125f8b25a2a \
    --region us-west-2
```
此命令不會產生輸出。  
如需詳細資訊，請參閱*AWS 《WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide*》中的[將 Web ACL 與 AWS 資源建立關聯或取消關聯](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-associating-aws-resource.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DisassociateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/disassociate-web-acl.html)。

### `get-ip-set`
<a name="wafv2_GetIpSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-ip-set`。

**AWS CLI**  
**擷取特定 IP 集**  
以下 `get-ip-set` 會擷取具有指定名稱、範圍和 ID 的 IP 集。您可以從命令 `create-ip-set` 和 `list-ip-sets` 中取得 IP 集的 ID。  

```
aws wafv2 get-ip-set \
    --name testip \
    --scope REGIONAL \
    --id a1b2c3d4-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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetIpSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-ip-set.html)。

### `get-logging-configuration`
<a name="wafv2_GetLoggingConfiguration_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-logging-configuration`。

**AWS CLI**  
**擷取 Web ACL 的記錄組態**  
以下 `get-logging-configuration` 會擷取所指定 Web ACL 的記錄組態。  

```
aws wafv2 get-logging-configuration \
    --resource-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222 \
    --region us-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 Developer Guide* 中的[記錄 Web ACL 流量資訊](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetLoggingConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-logging-configuration.html)。

### `get-rate-based-statement-managed-keys`
<a name="wafv2_GetRateBasedStatementManagedKeys_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-rate-based-statement-managed-keys`。

**AWS CLI**  
**擷取由速率型規則封鎖的 IP 位址清單**  
以下 `get-rate-based-statement-managed-keys` 會擷取目前由用於區域應用程式的速率型規則所封鎖的 IP 位址。  

```
aws wafv2 get-rate-based-statement-managed-keys \
    --scope REGIONAL \
    --web-acl-name testwebacl2 \
    --web-acl-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --rule-name ratebasedtest
```
輸出：  

```
{
    "ManagedKeysIPV4":{
        "IPAddressVersion":"IPV4",
        "Addresses":[
            "198.51.100.0/32"
        ]
    },
    "ManagedKeysIPV6":{
        "IPAddressVersion":"IPV6",
        "Addresses":[

        ]
    }
}
```
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide* 中的以[速率為基礎的規則陳述](https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-rate-based.html)式。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetRateBasedStatementManagedKeys](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-rate-based-statement-managed-keys.html)。

### `get-regex-pattern-set`
<a name="wafv2_GetRegexPatternSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name regexPatterSet01 \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --region us-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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetRegexPatternSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-regex-pattern-set.html)。

### `get-rule-group`
<a name="wafv2_GetRuleGroup_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-rule-group`。

**AWS CLI**  
**擷取特定自訂規則群組**  
以下 `get-rule-group` 會擷取具有指定名稱、範圍和 ID 的自訂規則群組。您可以從命令 `create-rule-group` 和 `list-rule-groups` 取得規則群組的 ID。  

```
aws wafv2 get-rule-group \
    --name ff \
    --scope REGIONAL \
    --id a1b2c3d4-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 Developer Guide* 中的[管理您自己的規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-user-created-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetRuleGroup](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-rule-group.html)。

### `get-sampled-requests`
<a name="wafv2_GetSampledRequests_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-sampled-requests`。

**AWS CLI**  
**擷取 Web ACL 的 Web 請求範例**  
以下 `get-sampled-requests` 會擷取指定 Web ACL、規則指標和時間範圍的範例 Web 請求。  

```
aws wafv2 get-sampled-requests \
    --web-acl-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/test-cli/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --rule-metric-name AWS-AWSManagedRulesSQLiRuleSet \
    --scope=REGIONAL \
    --time-window StartTime=2020-02-12T20:00Z,EndTime=2020-02-12T21:10Z \
    --max-items 100
```
輸出：  

```
{
    "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 和 Shield Advanced Developer Guide AWS * 中的[檢視 Web 請求範例](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-testing.html#web-acl-testing-view-sample)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetSampledRequests](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-sampled-requests.html)。

### `get-web-acl-for-resource`
<a name="wafv2_GetWebAclForResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `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-arn arn: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 Developer Guide*》中的[將 Web ACL 與 AWS 資源建立關聯或取消關聯](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-associating-aws-resource.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetWebAclForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-web-acl-for-resource.html)。

### `get-web-acl`
<a name="wafv2_GetWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name test01 \
    --scope REGIONAL \
    --id a1b2c3d4-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 Developer Guide 中的管理和使用 Web 存取控制清單 (Web ACL)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/get-web-acl.html)。

### `list-available-managed-rule-groups`
<a name="wafv2_ListAvailableManagedRuleGroups_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-available-managed-rule-groups`。

**AWS CLI**  
**擷取受管規則群組**  
以下 `list-available-managed-rule-groups` 會傳回目前可用於 Web ACL 的所有受管規則群組清單。  

```
aws wafv2 list-available-managed-rule-groups \
    --scope REGIONAL
```
輸出：  

```
 {
    "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 Developer Guide* 中的[受管規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListAvailableManagedRuleGroups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-available-managed-rule-groups.html)。

### `list-ip-sets`
<a name="wafv2_ListIpSets_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-ip-sets`。

**AWS CLI**  
**擷取 IP 集清單**  
以下 `list-ip-sets` 會擷取該帳戶其具有區域範圍的所有 IP 集。  

```
aws wafv2 list-ip-sets \
    --scope REGIONAL
```
輸出：  

```
{
    "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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListIpSets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-ip-sets.html)。

### `list-logging-configurations`
<a name="wafv2_ListLoggingConfigurations_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-logging-configurations`。

**AWS CLI**  
**擷取區域的所有記錄組態清單**  
以下 `list-logging-configurations` 會擷取範圍限定在 `us-west-2` 區域中供區域使用之 Web ACL 的所有記錄組態。  

```
aws wafv2 list-logging-configurations \
    --scope REGIONAL \
    --region us-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 Developer Guide* 中的[記錄 Web ACL 流量資訊](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListLoggingConfigurations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-logging-configurations.html)。

### `list-regex-pattern-sets`
<a name="wafv2_ListRegexPatternSets_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-regex-pattern-sets`。

**AWS CLI**  
**擷取規則運算式模式集清單**  
下列 `list-regex-pattern-sets` 會擷取區域 `us-west-2` 中所定義帳戶的所有規則運算式模式集。  

```
aws wafv2 list-regex-pattern-sets \
--scope REGIONAL \
--region us-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 Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListRegexPatternSets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-regex-pattern-sets.html)。

### `list-resources-for-web-acl`
<a name="wafv2_ListResourcesForWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `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-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/TestWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --resource-type API_GATEWAY \
    --region us-west-2
```
輸出：  

```
{
    "ResourceArns": [
        "arn:aws:apigateway:us-west-2::/restapis/EXAMPLE111/stages/testing"
    ]
}
```
如需詳細資訊，請參閱*AWS 《WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide*》中的[將 Web ACL 與 AWS 資源建立關聯或取消關聯](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-associating-aws-resource.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListResourcesForWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-resources-for-web-acl.html)。

### `list-rule-groups`
<a name="wafv2_ListRuleGroups_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-rule-groups`。

**AWS CLI**  
**擷取自訂規則群組清單**  
以下 `list-rule-groups` 會擷取為所指定範圍和區域位置的帳戶定義的所有自訂規則群組。  

```
aws wafv2 list-rule-groups \
    --scope REGIONAL \
    --region us-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 Developer Guide* 中的[管理您自己的規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-user-created-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListRuleGroups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-rule-groups.html)。

### `list-tags-for-resource`
<a name="wafv2_ListTagsForResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-tags-for-resource`。

**AWS CLI**  
**擷取 AWS WAF 資源的所有標籤**  
以下 `list-tags-for-resource` 會擷取所指定 Web ACL 的所有標籤鍵值對清單。  

```
aws wafv2 list-tags-for-resource \
    --resource-arn arn: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、Firewall Manager 和 Shield 進階開發人員指南中的 WAF 入門](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html)。 *AWS AWS AWS *  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-tags-for-resource.html)。

### `list-web-acls`
<a name="wafv2_ListWebAcls_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-web-acls`。

**AWS CLI**  
**擷取範圍的 Web ACL**  
以下 `list-web-acls` 會擷取為所指定範圍的帳戶定義的所有 Web ACL。  

```
aws wafv2 list-web-acls \
    --scope REGIONAL
```
輸出：  

```
{
    "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 Developer Guide 中的管理和使用 Web 存取控制清單 (Web ACL)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListWebAcls](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-web-acls.html)。

### `put-logging-configuration`
<a name="wafv2_PutLoggingConfiguration_cli_topic"></a>

以下程式碼範例顯示如何使用 `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-configuration 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 \
            --region us-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 Developer Guide* 中的[記錄 Web ACL 流量資訊](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [PutLoggingConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/put-logging-configuration.html)。

### `tag-resource`
<a name="wafv2_TagResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `tag-resource`。

**AWS CLI**  
**將標籤新增至 AWS WAF 資源**  
下列 `tag-resource` 範例會將具有 `Name` 的索引鍵且值設定為 `AWSWAF` 的標籤新增至指定的 Web ACL。  

```
aws wafv2 tag-resource \
    --resource-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/apiGatewayWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --tags Key=Name,Value=AWSWAF
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 [AWS WAF、Firewall Manager 和 Shield 進階開發人員指南中的 WAF 入門](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html)。 *AWS AWS AWS *  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/tag-resource.html)。

### `untag-resource`
<a name="wafv2_UntagResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `untag-resource`。

**AWS CLI**  
**從 AWS WAF 資源移除標籤**  
下列 `untag-resource` 範例會將具有索引鍵 `KeyName` 的標籤從指定的 Web ACL 中移除。  

```
aws wafv2 untag-resource \
    --resource-arn arn:aws:wafv2:us-west-2:123456789012:regional/webacl/apiGatewayWebAcl/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --tag-keys "KeyName"
```
此命令不會產生輸出。  
如需詳細資訊，請參閱 [AWS WAF、Firewall Manager 和 Shield 進階開發人員指南中的 WAF 入門](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html)。 *AWS AWS AWS *  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/untag-resource.html)。

### `update-ip-set`
<a name="wafv2_UpdateIpSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name testip \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --addresses 198.51.100.0/16 \
    --lock-token 447e55ac-2396-4c6d-b9f9-86b67c17f8b5
```
輸出：  

```
{
    "NextLockToken": "0674c84b-0304-47fe-8728-c6bff46af8fc"
}
```
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateIpSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/update-ip-set.html)。

### `update-regex-pattern-set`
<a name="wafv2_UpdateRegexPatternSet_cli_topic"></a>

以下程式碼範例顯示如何使用 `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 \
    --name ExampleRegex \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --regular-expression-list RegexString="^.+$"  \
    --lock-token ed207e9c-82e9-4a77-aadd-81e6173ab7eb
```
輸出：  

```
{
    "NextLockToken": "12ebc73e-fa68-417d-a9b8-2bdd761a4fa5"
}
```
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的 IP 集和 Regex 模式集](https://docs.aws.amazon.com/waf/latest/developerguide/waf-referenced-set-managing.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateRegexPatternSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/update-regex-pattern-set.html)。

### `update-rule-group`
<a name="wafv2_UpdateRuleGroup_cli_topic"></a>

以下程式碼範例顯示如何使用 `update-rule-group`。

**AWS CLI**  
**更新自訂規則群組**  
以下 `update-rule-group` 會變更現有自訂規則群組的可見性組態。此呼叫需要一個您可以從呼叫取得的 ID、`list-rule-groups`，以及一個您可以從呼叫、`list-rule-groups` 和 `get-rule-group` 取得的鎖定權杖。此呼叫也會傳回鎖定權杖，供您用於後續更新。  

```
aws wafv2 update-rule-group \
    --name TestRuleGroup \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token 7b3bcec2-0000-0000-0000-563bf47249f0 \
    --visibility-config SampledRequestsEnabled=false,CloudWatchMetricsEnabled=false,MetricName=TestMetricsForRuleGroup \
    --region us-west-2
```
輸出：  

```
{
    "NextLockToken": "1eb5ec48-0000-0000-0000-ee9b906c541e"
}
```
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager 和 AWS Shield Advanced Developer Guide* 中的[管理您自己的規則群組](https://docs.aws.amazon.com/waf/latest/developerguide/waf-user-created-rule-groups.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateRuleGroup](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/update-rule-group.html)。

### `update-web-acl`
<a name="wafv2_UpdateWebAcl_cli_topic"></a>

以下程式碼範例顯示如何使用 `update-web-acl`。

**AWS CLI**  
**更新 Web ACL**  
下列 `update-web-acl` 會變更現有 Web ACL 的設定。此呼叫需要一個您可以從呼叫取得的 ID、`list-web-acls`，以及一個您可以從呼叫 `get-web-acl` 取得的鎖定權杖和其他設定。此呼叫也會傳回鎖定權杖，供您用於後續更新。  

```
aws wafv2 update-web-acl \
    --name TestWebAcl \
    --scope REGIONAL \
    --id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
    --lock-token 2294b3a1-0000-0000-0000-a3ae04329de9 \
    --default-action Block={} \
    --visibility-config SampledRequestsEnabled=false,CloudWatchMetricsEnabled=false,MetricName=NewMetricTestWebAcl \
    --rules file://waf-rule.json \
    --region us-west-2
```
輸出：  

```
{
    "NextLockToken": "714a0cfb-0000-0000-0000-2959c8b9a684"
}
```
如需詳細資訊，請參閱 *AWS WAF、 AWS Firewall Manager AWS * [和 Shield Advanced Developer Guide 中的管理和使用 Web 存取控制清單 (Web ACL)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/update-web-acl.html)。