

Doc AWS SDK 예제 GitHub 리포지토리에서 더 많은 SDK 예제를 사용할 수 있습니다. [AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS SDKs AWS WAFV2 사용에 대한 기본 예제
<a name="wafv2_code_examples_basics"></a>

다음 코드 예제에서는 AWS WAFV2 SDKs에서의 기본 사항을 AWS 사용하는 방법을 보여줍니다.

**Contents**
+ [작업](wafv2_code_examples_actions.md)
  + [`CreateWebAcl`](wafv2_example_wafv2_CreateWebAcl_section.md)

# AWS SDKs AWS WAFV2 를 사용하기 위한 작업
<a name="wafv2_code_examples_actions"></a>

다음 코드 예제에서는 AWS SDKs를 사용하여 개별 AWS WAFV2 작업을 수행하는 방법을 보여줍니다. 각 예시에는 GitHub에 대한 링크가 포함되어 있습니다. 여기에서 코드 설정 및 실행에 대한 지침을 찾을 수 있습니다.

 다음 예제에는 가장 일반적으로 사용되는 작업만 포함되어 있습니다. 전체 목록은 [AWS WAFV2 API 참조](https://docs.aws.amazon.com/waf/latest/APIReference/API_Operations_AWS_WAFV2.html)를 참조하세요.

**Topics**
+ [`CreateWebAcl`](wafv2_example_wafv2_CreateWebAcl_section.md)

# CLI로 `CreateWebAcl` 사용
<a name="wafv2_example_wafv2_CreateWebAcl_section"></a>

다음 코드 예시는 `CreateWebAcl`의 사용 방법을 보여 줍니다.

------
#### [ CLI ]

**AWS CLI**  
**웹 ACL 생성**  
다음 `create-web-acl` 명령은 리전에서 사용할 웹 ACL을 생성합니다. 웹 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 개발자 안내서의* [웹 액세스 제어 목록(웹 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) 섹션을 참조하세요.

------
#### [ PowerShell ]

**Tools for PowerShell V4**  
**예제 1: 이 명령에서는 'waf-test'라는 새 웹 ACL을 생성합니다. 서비스 API 설명서에 따라 'DefaultAction'은 필수 속성입니다. 따라서 '-DefaultAction\$1Allow' 및/또는 '-DefaultAction\$1Block' 값을 지정해야 합니다. '-DefaultAction\$1Allow' 및 '-DefaultAction\$1Block'은 필수 속성이 아니므로, 위 예제와 같이 '@\$1\$1' 값을 자리 표시자로 사용할 수 있습니다.**  

```
New-WAF2WebACL -Name "waf-test" -Scope REGIONAL -Region eu-west-1 -VisibilityConfig_CloudWatchMetricsEnabled $true -VisibilityConfig_SampledRequestsEnabled $true -VisibilityConfig_MetricName "waf-test" -Description "Test" -DefaultAction_Allow @{}
```
**출력:**  

```
ARN         : arn:aws:wafv2:eu-west-1:139480602983:regional/webacl/waf-test/19460b3f-db14-4b9a-8e23-a417e1eb007f
Description : Test
Id          : 19460b3f-db14-4b9a-8e23-a417e1eb007f
LockToken   : 5a0cd5eb-d911-4341-b313-b429e6d6b6ab
Name        : waf-test
```
+  API 세부 정보는 *AWS Tools for PowerShell Cmdlet 참조(V4)*의 [CreateWebAcl](https://docs.aws.amazon.com/powershell/v4/reference)을 참조하세요.

**Tools for PowerShell V5**  
**예제 1: 이 명령에서는 'waf-test'라는 새 웹 ACL을 생성합니다. 서비스 API 설명서에 따라 'DefaultAction'은 필수 속성입니다. 따라서 '-DefaultAction\$1Allow' 및/또는 '-DefaultAction\$1Block' 값을 지정해야 합니다. '-DefaultAction\$1Allow' 및 '-DefaultAction\$1Block'은 필수 속성이 아니므로, 위 예제와 같이 '@\$1\$1' 값을 자리 표시자로 사용할 수 있습니다.**  

```
New-WAF2WebACL -Name "waf-test" -Scope REGIONAL -Region eu-west-1 -VisibilityConfig_CloudWatchMetricsEnabled $true -VisibilityConfig_SampledRequestsEnabled $true -VisibilityConfig_MetricName "waf-test" -Description "Test" -DefaultAction_Allow @{}
```
**출력:**  

```
ARN         : arn:aws:wafv2:eu-west-1:139480602983:regional/webacl/waf-test/19460b3f-db14-4b9a-8e23-a417e1eb007f
Description : Test
Id          : 19460b3f-db14-4b9a-8e23-a417e1eb007f
LockToken   : 5a0cd5eb-d911-4341-b313-b429e6d6b6ab
Name        : waf-test
```
+  API 세부 정보는 *AWS Tools for PowerShell Cmdlet 참조(V5)*의 [CreateWebAcl](https://docs.aws.amazon.com/powershell/v5/reference)을 참조하세요.

------