AWS WAF 레이블 일치 예제 - AWS WAF, AWS Firewall ManagerAWS Shield Advanced및 AWS Shield 네트워크 보안 디렉터

에 대한 새로운 콘솔 환경 소개 AWS WAF

이제 업데이트된 환경을 사용하여 콘솔의 모든 위치에서 AWS WAF 기능에 액세스할 수 있습니다. 자세한 내용은 업데이트된 콘솔 환경 작업 섹션을 참조하십시오.

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

AWS WAF 레이블 일치 예제

이 섹션에서는 레이블 일치 규칙 문에 대한 일치 사양의 예를 제공합니다.

참고

이러한 JSON 목록은 레이블 일치 사양이 있는 보호 팩(웹 ACL)에 규칙을 추가한 다음 규칙을 편집하고 규칙 JSON 편집기로 전환하여 콘솔에서 생성되었습니다. APIs 또는 보호 팩(웹 ACL)의 JSON을 가져올 수도 있습니다.

로컬 레이블과 일치

다음 JSON 목록은 이 규칙과 동일한 컨텍스트에서 웹 요청에 로컬로 추가된 레이블에 대한 레이블 일치 문을 보여줍니다.

Rule: { Name: "match_rule", Statement: { LabelMatchStatement: { Scope: "LABEL", Key: "header:encoding:utf8" } }, RuleLabels: [ ...generate_more_labels... ], Action: { Block: {} } }

계정 111122223333에서이 일치 문을 사용하는 경우 보호 팩(웹 ACL)에 대해 정의한 규칙에서 다음 레이블과 일치testWebACL합니다.

awswaf:111122223333:webacl:testWebACL:header:encoding:utf8
awswaf:111122223333:webacl:testWebACL:testNS1:testNS2:header:encoding:utf8

레이블 문자열이 정확히 일치하지 않기 때문에 다음 레이블과 일치하지 않을 수 있습니다.

awswaf:111122223333:webacl:testWebACL:header:encoding2:utf8

컨텍스트가 동일하지 않아 접두사가 일치하지 않으므로 다음 레이블과 일치하지 않을 수 있습니다. 규칙이 정의된 보호 팩(웹 ACL) productionRulestestWebACL규칙 그룹을 추가한 경우에도 마찬가지입니다.

awswaf:111122223333:rulegroup:productionRules:header:encoding:utf8

다른 컨텍스트의 레이블과 일치

다음 JSON 목록은 사용자가 만든 규칙 그룹 내 규칙의 레이블과 일치하는 레이블 일치 규칙을 보여줍니다. 접두사는 명명된 규칙 그룹의 일부가 아닌 보호 팩(웹 ACL)에서 실행되는 모든 규칙에 대한 사양에 필요합니다. 이 예제 레이블 사양은 정확한 레이블만 일치시킵니다.

Rule: { Name: "match_rule", Statement: { LabelMatchStatement: { Scope: "LABEL", Key: "awswaf:111122223333:rulegroup:testRules:header:encoding:utf8" } }, RuleLabels: [ ...generate_more_labels... ], Action: { Block: {} } }

관리형 규칙 그룹 레이블과 일치

이는 일치 규칙의 레이블이 아닌 다른 컨텍스트의 레이블을 대상으로 일치시키는 특별한 경우입니다. 다음 JSON 목록은 관리형 규칙 그룹 레이블의 레이블 일치 문을 보여줍니다. 이 경우 레이블 일치 문의 키 설정에 지정된 것과 정확히 일치하는 레이블만 일치시킵니다.

Rule: { Name: "match_rule", Statement: { LabelMatchStatement: { Scope: "LABEL", Key: "awswaf:managed:aws:managed-rule-set:header:encoding:utf8" } }, RuleLabels: [ ...generate_more_labels... ], Action: { Block: {} } }

로컬 네임스페이스와 일치

다음 JSON 목록은 로컬 네임스페이스의 레이블 일치 문을 보여줍니다.

Rule: { Name: "match_rule", Statement: { LabelMatchStatement: { Scope: "NAMESPACE", Key: "header:encoding:" } }, Labels: [ ...generate_more_labels... ], Action: { Block: {} } }

로컬 Label 일치와 마찬가지로 계정 111122223333에서이 문을 사용하는 경우 보호 팩(웹 ACL)에 대해 정의한 규칙에서 다음 레이블과 일치testWebACL합니다.

awswaf:111122223333:webacl:testWebACL:header:encoding:utf8

계정이 동일하지 않아 접두사가 일치하지 않으므로 다음 레이블과 일치하지 않을 수 있습니다.

awswaf:444455556666:webacl:testWebACL:header:encoding:utf8

또한 다음과 같이 접두사가 관리형 규칙 그룹에서 적용한 어떤 레이블과도 일치하지 않습니다.

awswaf:managed:aws:managed-rule-set:header:encoding:utf8

관리형 규칙 그룹 네임스페이스와 일치

다음 JSON 목록은 관리형 규칙 그룹 네임스페이스의 레이블 일치 문을 보여줍니다. 소유한 규칙 그룹의 경우 규칙 컨텍스트 외부에 있는 네임스페이스와 일치시키려면 접두사도 제공해야 합니다.

Rule: { Name: "match_rule", Statement: { LabelMatchStatement: { Scope: "NAMESPACE", Key: "awswaf:managed:aws:managed-rule-set:header:" } }, RuleLabels: [ ...generate_more_labels... ], Action: { Block: {} } }

이 사양은 다음 예제 레이블과 일치합니다.

awswaf:managed:aws:managed-rule-set:header:encoding:utf8
awswaf:managed:aws:managed-rule-set:header:encoding:unicode

다음 레이블과는 일치하지 않습니다.

awswaf:managed:aws:managed-rule-set:query:badstring