AWS WAF exemplos de correspondência de rótulos - AWS WAF, AWS Firewall Manager, e AWS Shield Advanced

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS WAF exemplos de correspondência de rótulos

Esta seção fornece exemplos de especificações de correspondência para a instrução da regra de correspondência de rótulos.

nota

Essas listas JSON foram criadas no console adicionando uma regra a uma web ACL com as especificações de correspondência de rótulos e, em seguida, editando a regra e mudando para o Editor JSON de regras. Você também pode obter o JSON para um grupo de regras ou web ACL por meio das APIs ou da interface da linha de comando.

Corresponda com um rótulo local

A lista JSON a seguir mostra uma instrução de correspondência de rótulo para um rótulo que foi adicionado à solicitação da web localmente, no mesmo contexto dessa regra.

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

Se você usar essa instrução de correspondência na conta 111122223333, em uma regra que você define para testWebACL da web ACL, ela corresponderá aos rótulos a seguir.

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

Não corresponderia ao rótulo a seguir, porque a string do rótulo não é uma correspondência exata.

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

Não corresponderia ao rótulo a seguir, porque o contexto não é o mesmo e, portanto, o prefixo não corresponde. Isso é verdade mesmo se você adicionou o productionRules do grupo de regras ao testWebACL da web ACL, onde a regra é definida.

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

Correspondência com um rótulo de outro contexto

A lista JSON a seguir mostra uma regra de correspondência de rótulos que corresponde a um rótulo de uma regra dentro de um grupo de regras criado pelo usuário. O prefixo é obrigatório na especificação para todas as regras em execução na web ACL que não fazem parte do grupo de regras nomeado. Este exemplo de especificação de rótulo corresponde somente ao rótulo exato.

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

Correspondência com um rótulo de grupo de regras gerenciadas

Este é um caso especial de correspondência com um rótulo que é de outro contexto que não o da regra de correspondência. A lista JSON a seguir mostra uma instrução de correspondência de rótulo para um rótulo de grupo de regras gerenciadas. Isso corresponde somente ao rótulo exato especificado na configuração de chave da instrução de correspondência do rótulo.

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

Correspondência com um namespace local

A lista JSON a seguir mostra uma instrução de correspondência de rótulo para um namespace local.

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

Semelhante à correspondência Label local, se você usar essa instrução na conta 111122223333, em uma regra que você define para testWebACL da web ACL, ela corresponderá ao rótulo a seguir.

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

Não corresponderia ao rótulo a seguir, porque a conta não é a mesma e, portanto, o prefixo não corresponde.

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

O prefixo também não corresponde a nenhum rótulo aplicado por grupos de regras gerenciadas, como o seguinte.

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

Correspondência com um namespace de grupo de regras gerenciadas

A lista JSON a seguir mostra uma instrução de correspondência de rótulo para um namespace de grupo de regras gerenciadas. Para um grupo de regras que você possui, você também precisaria fornecer o prefixo para corresponder a um namespace que esteja fora do contexto da regra.

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

Essa especificação corresponde aos rótulos de exemplo a seguir.

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

Não corresponde ao rótulo a seguir.

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