AWS WAF 레이블 구문 및 이름 지정 요구 사항 - AWS WAF, AWS Firewall Manager, 및 AWS Shield Advanced

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

AWS WAF 레이블 구문 및 이름 지정 요구 사항

레이블은 접두사, 선택적 네임스페이스 및 이름으로 구성된 문자열입니다. 레이블의 구성 요소는 콜론으로 구분됩니다. 레이블의 요구 사항 및 특성은 다음과 같습니다.

  • 레이블은 대/소문자를 구분합니다.

  • 각 레이블 네임스페이스 또는 레이블 이름은 최대 128자일 수 있습니다.

  • 레이블에 최대 5개의 네임스페이스를 지정할 수 있습니다.

  • 레이블의 구성 요소는 콜론(:)으로 구분됩니다.

  • 레이블에 지정하는 네임스페이스나 이름에는 예약된 문자열(awswaf, aws, waf, rulegroup, webacl, regexpatternset, ipsetmanaged)을 사용할 수 없습니다.

레이블 구문

정규화된 레이블에는 접두사, 선택적 네임스페이스 및 레이블 이름이 포함됩니다. 접두사는 레이블을 추가한 규칙의 규칙 그룹 또는 웹 ACL 컨텍스트를 식별합니다. 네임스페이스는 레이블에 대한 더 많은 컨텍스트를 추가하는 데 사용될 수 있습니다. 레이블 이름은 레이블에 대한 가장 낮은 수준의 세부 정보를 제공합니다. 이는 흔히 요청에 레이블을 추가한 특정 규칙을 나타냅니다.

레이블 접두사는 오리진에 따라 다릅니다.

  • 레이블 - 다음은 웹 ACL 및 규칙 그룹 규칙에서 생성하는 레이블의 전체 레이블 구문입니다. 엔터티 유형은 rulegroupwebacl입니다.

    awswaf:<entity owner account id>:<entity type>:<entity name>:<custom namespace>:...:<label name>
    • 레이블 네임스페이스 접두사: awswaf:<entity owner account id>:<entity type>:<entity name>:

    • 사용자 지정 네임스페이스 추가: <custom namespace>:…:

    규칙 그룹 또는 웹 ACL에서 규칙의 레이블을 정의하면 사용자 지정 네임스페이스 문자열과 레이블 이름을 제어할 수 있습니다. 나머지는 에서 자동으로 생성합니다 AWS WAF. AWS WAF 모든 레이블 앞에 awswaf 계정과 웹 ACL 또는 규칙 그룹 엔티티 설정을 자동으로 접두사로 붙입니다.

  • 관리형 규칙 그룹 레이블 - 다음은 관리형 규칙 그룹의 규칙을 통해 생성되는 레이블의 전체 레이블 구문입니다.

    awswaf:managed:<vendor>:<rule group name>:<custom namespace>:...:<label name>
    • 레이블 네임스페이스 접두사: awswaf:managed:<vendor>:<rule group name>:

    • 사용자 지정 네임스페이스 추가: <custom namespace>:…:

    모든 AWS 관리형 규칙 그룹은 레이블을 추가합니다. 관리형 규칙 그룹에 대한 자세한 내용은 관리형 규칙 그룹 단원을 참조하세요.

  • 다른 AWS 프로세스의 레이블 - 이러한 프로세스는 AWS 관리형 규칙 그룹에서 사용되므로 관리형 규칙 그룹을 사용하여 평가하는 웹 요청에 추가된 것을 확인할 수 있습니다. 다음은 관리형 규칙 그룹에서 호출하는 프로세스에 의해 생성되는 레이블의 전체 레이블 구문입니다.

    awswaf:managed:<process>:<custom namespace>:...:<label name>
    • 레이블 네임스페이스 접두사: awswaf:managed:<process>:

    • 사용자 지정 네임스페이스 추가: <custom namespace>:…:

    AWS 프로세스를 호출하는 관리형 규칙 그룹에는 이 유형의 레이블이 나열됩니다. 관리형 규칙 그룹에 대한 자세한 내용은 관리형 규칙 그룹 단원을 참조하세요.

규칙의 예제 레이블

다음 예제 레이블은 111122223333 계정에 속하는 testRules 이름이 지정된 규칙 그룹의 규칙을 통해 정의됩니다.

awswaf:111122223333:rulegroup:testRules:testNS1:testNS2:LabelNameA
awswaf:111122223333:rulegroup:testRules:testNS1:LabelNameQ
awswaf:111122223333:rulegroup:testRules:LabelNameZ

다음 목록은 JSON으로 작성된 예제 레이블 사양입니다. 이들 레이블 이름에는 끝 레이블 이름 앞에 사용자 지정 네임스페이스 문자열이 포함됩니다.

Rule: { Name: "label_rule", Statement: {...} RuleLabels: [ Name: "header:encoding:utf8", Name: "header:user_agent:firefox" ], Action: { Count: {} } }
참고

콘솔에서 규칙 JSON 편집기를 통해 이 유형의 목록에 액세스할 수 있습니다.

위의 예제 레이블과 동일한 규칙 그룹 및 계정에서 위 규칙을 실행하면 다음과 같은 정규화된 레이블이 생성됩니다.

awswaf:111122223333:rulegroup:testRules:header:encoding:utf8
awswaf:111122223333:rulegroup:testRules:header:user_agent:firefox
관리형 규칙 그룹의 레이블 예제

다음은 AWS 관리형 규칙 규칙 그룹 및 해당 그룹이 호출하는 프로세스의 예제 레이블을 보여줍니다.

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