Exemplos do AWS WAF Classic regional usando oAWS CLI - AWS Command Line Interface

Exemplos do AWS WAF Classic regional usando oAWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o AWS WAF Classic regional.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar associate-web-acl.

AWS CLI

Como associar uma ACL da web com um recurso

O comando associate-web-acl a seguir associa uma ACL da web, especificada pelo web-acl-id, a um recurso especificado pelo resource-arn. O ARN do recurso pode se referir a um balanceador de carga de aplicação ou a um API Gateway:

aws waf-regional associate-web-acl \ --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --resource-arn 12cs345-67cd-890b-1cd2-c3a4567d89f1

Para obter mais informações, consulte Trabalhar com ACLs da web no Guia do usuário do AWS WAF.

  • Para ver detalhes da API, consulte AssociateWebAcl na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar put-logging-configuration.

AWS CLI

Para criar uma configuração de registro em log para o ARN da ACL da web com o ARN de fluxo especificado do Kinesis Firehose

O exemplo put-logging-configuration a seguir exibe a configuração de registro em log para WAF com ALB/APIGateway na região us-east-1.

aws waf-regional put-logging-configuration \ --logging-configuration ResourceArn=arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3,LogDestinationConfigs=arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream,RedactedFields=[] \ --region us-east-1

Saída:

{ "LoggingConfiguration": { "ResourceArn": "arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3", "LogDestinationConfigs": [ "arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream" ] } }

O código de exemplo a seguir mostra como usar update-byte-match-set.

AWS CLI

Para atualizar um conjunto de correspondências de bytes

O comando update-byte-match-set a seguir exclui um objeto (filtro) ByteMatchTuple em um ByteMatchSet. Como o valor updates tem aspas duplas incorporadas, o valor deve ser colocado entre aspas simples.

aws waf-regional update-byte-match-set \ --byte-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",ByteMatchTuple={FieldToMatch={Type="HEADER",Data="referer"},TargetString="badrefer1",TextTransformation="NONE",PositionalConstraint="CONTAINS"}'

Para obter mais informações, consulte Trabalhar com condições de correspondência de string no Guia do desenvolvedor do AWS WAF.

  • Para ver detalhes da API, consulte UpdateByteMatchSet na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-ip-set.

AWS CLI

Para atualizar um conjunto de IPs

O comando update-ip-set a seguir atualiza um IPSet com um endereço IPv4 e exclui um endereço IPv6. Obtenha o valor de change-token executando o comando get-change-token. Como o valor das atualizações inclui aspas duplas incorporadas, o valor deve ser colocado entre aspas simples.

aws waf update-ip-set \ --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="INSERT",IPSetDescriptor={Type="IPV4",Value="12.34.56.78/16"},Action="DELETE",IPSetDescriptor={Type="IPV6",Value="1111:0000:0000:0000:0000:0000:0000:0111/128"}'

Como alternativa, você pode usar um arquivo JSON para especificar a entrada. Por exemplo:

aws waf-regional update-ip-set \ --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates file://change.json

Conteúdo do change.json

[ { "Action": "INSERT", "IPSetDescriptor": { "Type": "IPV4", "Value": "12.34.56.78/16" } }, { "Action": "DELETE", "IPSetDescriptor": { "Type": "IPV6", "Value": "1111:0000:0000:0000:0000:0000:0000:0111/128" } } ]

Para obter mais informações, consulte Trabalhar com condições de correspondência de IP no Guia do desenvolvedor do AWS WAF.

  • Para ver detalhes da API, consulte UpdateIpSet na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-rule.

AWS CLI

Para atualizar uma regra

O comando update-rule a seguir exclui um objeto Predicate em uma regra. Como o valor updates tem aspas duplas incorporadas, o valor inteiro deve ser colocado entre aspas simples.

aws waf-regional update-rule \ --rule-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",Predicate={Negated=false,Type="ByteMatch",DataId="MyByteMatchSetID"}'

Para obter mais informações, consulte Trabalhar com regras no Guia do desenvolvedor do AWS WAF.

  • Para ver detalhes da API, consulte UpdateRule na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-size-constraint-set.

AWS CLI

Para atualizar um conjunto de restrições de tamanho

O comando update-size-constraint-set a seguir exclui um objeto SizeConstraint` (filtros) em um conjunto de restrições de tamanho. Como o valor updates contém aspas duplas incorporadas, o valor inteiro deve ser colocado entre aspas simples.

aws waf-regional update-size-constraint-set \ --size-constraint-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",SizeConstraint={FieldToMatch={Type="QUERY_STRING"},TextTransformation="NONE",ComparisonOperator="GT",Size=0}'

Para obter mais informações, consulte Trabalhar com condições de restrições de tamanho no Guia do desenvolvedor do AWS WAF.

O código de exemplo a seguir mostra como usar update-sql-injection-match-set.

AWS CLI

Para atualizar um conjunto de injeções de SQL

O comando update-sql-injection-match-set a seguir exclui um objeto SqlInjectionMatchTuple (filtros) em um conjunto de correspondências de injeção de SQL. Como valor updates contém aspas duplas incorporadas, você deve colocar o valor inteiro entre aspas simples:

aws waf-regional update-sql-injection-match-set --sql-injection-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 --updates 'Action="DELETE",SqlInjectionMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}'

Para obter mais informações, consulte Trabalhar com condições de correspondência de injeção de SQL no Guia do desenvolvedor do AWS WAF.

O código de exemplo a seguir mostra como usar update-web-acl.

AWS CLI

Para criar uma ACL da web

O comando update-web-acl a seguir exclui um objeto ActivatedRule em uma WebACL. Como valor updates contém aspas duplas incorporadas, você deve colocar o valor inteiro entre aspas simples.

aws waf-regional update-web-acl \ --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates Action="DELETE",ActivatedRule='{Priority=1,RuleId="WAFRule-1-Example",Action={Type="ALLOW"},Type="ALLOW"}'

Para obter mais informações, consulte Trabalhar com ACLs da web no Guia do usuário do AWS WAF.

  • Para ver detalhes da API, consulte UpdateWebAcl na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-xss-match-set.

AWS CLI

Para atualizar um XSSMatchSet

O comando update-xss-match-set a seguir exclui um objeto XssMatchTuple (filtros) em um XssMatchSet. Como o valor updates contém aspas duplas incorporadas, o valor inteiro deve ser colocado entre aspas simples.

aws waf-regional update-xss-match-set \ --xss-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \ --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \ --updates 'Action="DELETE",XssMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}'

Para obter mais informações, consulte Trabalhar com condições de correspondência de script entre sites no Guia do desenvolvedor do AWS WAF.

  • Para ver detalhes da API, consulte UpdateXssMatchSet na Referência de comandos da AWS CLI.