Contents
Label이란?
AWS WAF의 Label이란 WAF에서 처리한 HTTP Request에 대해 관리형 규칙에 의해 자동으로 부여되거나 혹은 수동으로 부여되는 속성값을 의미한다.
Label 규칙
- 대/소문자를 구분한다.
- 각 Label의 네임스페이스 또는 Label 이름은 최대 128자이다.
- Label에 최대 5개의 네임스페이스를 지정할 수 있다.
- Label의 구성 요소는 콜론 (:) 으로 구분된다.
- Label에 지정한 네임스페이스나 이름에는 다음의 예약된 문자열은 사용할 수 없다.
- awswaf
- aws
- waf
- rulegroup
- webacl
- regexpatternset
- ipset
- managed
Label 구조
Label은 사용자 정의 Label과 관리형 규칙 Label로 나뉜다.
1️⃣ 사용자 정의 Label
사용자가 임의의 값을 입력하여 AWS WAF 규칙에 매칭되는 HTTP Requeset에 부여할 수 있는 Label이다.
awswaf:<entity owner account id>:<entity type>:<entity name>:<custom namespace>:...:<label name>
- Label Namespace Prefix
- <entity owner account id> : AWS WAF를 소유하고 있는 소유자의 AWS Account ID를 뜻한다. (필수)
- <entity type> : 엔티티 유형을 뜻한다. rulegroup 혹은 webacl이 있다. (필수)
- <entity name> : 엔티티 유형의 이름을 뜻한다. 만약, 엔티티 유형이 rulegroup일 경우 rulegroup의 이름을 적는다. (필수)
- Custom Namespace Addition
- <custom namespace> : 하나 이상의 네임 스페이스를 지정한다. (생략가능)
- <label name> : Label의 이름을 뜻한다. (필수)
사용자 정의 Label 예제
사용자 정의 Label의 예제이다.
awswaf:111122223333:rulegroup:testRules:testNS1:testNS2:LabelNameA
awswaf:111122223333:rulegroup:testRules:testNS1:LabelNameQ
awswaf:111122223333:rulegroup:testRules:LabelNameZ
2️⃣ 관리형 규칙 Label
관리형 Rule Group에 설정되어 있는 Label이다. 사용자가 임의로 설정할 수 없다.
사용자의 HTTP Request가 관리형 규칙에 매칭될 경우 자동으로 Label이 할당된다.
awswaf:managed:<vendor>:<rule group name>:<custom namespace>:...:<label name>
- Label Namespace Prefix
- <vendor> : 관리형 규칙을 제공하는 벤더사의 이름을 뜻한다.
- <rule group name> : Rule Group의 이름을 뜻한다.
- Custom Namespace Addition
- <custom namespace> : 하나 이상의 네임 스페이스를 지정한다. (생략가능)
- <label name> : Label의 이름을 뜻한다. (필수)
관리형 규칙 Label 예제
관리형 규칙 Label의 예제이다.
awswaf:managed:aws:core-rule-set:NoUserAgent_Header
awswaf:managed:aws:sql-database:SQLiExtendedPatterns_QueryArguments
awswaf:managed:aws:atp:aggregate:attribute:compromised_credentials
awswaf:managed:token:accepted
3️⃣ 관리형 규칙 Process Label
AWS 관리형 규칙 그룹을 사용하는 경우 적용되는 Label이다.
awswaf:managed:<process>:<custom namespace>:...:<label name>
주의사항
- Label은 Rule Group에는 적용할 수 없고 Rule Group에 포함된 개별의 규칙에 설정이 가능하다.
- Rate-Based 규칙을 사용하는 경우 관리자가 지정한 Rate를 초과하는 요청에 대서만 Label 이 추가된다.
사용 사례
- AWS WAF의 특정 규칙에 매칭될 경우에만 (필터링하여) 로그로 남기기
- 특정 사용자 요청에 대해 관리형 규칙에서 오탐이 발생할 경우 예외처리 하기.
Reference