Ao adicionar recursos para proteção com AWS Shield Advanced por meio do console, o 'assistente' criou uma regra de limitação de taxa da Web ACL, que posso ver no console em
- AWS WAF > Web ACLs > MyACL > Regras > MyRateLimitingRule
Como posso obter (e definir) os detalhes dessa regra programaticamente? Tentei usar a CLI com os comandos waf
e wafv2
, mas nenhum deles retornou nada útil; o mais próximo que cheguei foi
aws wafv2 list-available-managed-rule-groups --scope REGIONAL
que, pelo menos, retorna o AWSManagedRulesCommonRuleSet, que também é visível, acima de MyRateLimitingRule. A CLI pode retornar o que preciso ou existe outra maneira de obter esses detalhes (talvez um script Python indo para a API)?
Responder1
Este script fornece a resposta necessária (Bash, AWS CLI, JQ)
#!/bin/bash
web_acl_id () {
aws wafv2 list-web-acls\
--scope REGIONAL |
jq -r ".WebACLs [] |
select (.Name == \"$web_acl_name\") |
.Id"
}
web_acl_rule () {
aws wafv2 get-web-acl\
--name $web_acl_name\
--scope REGIONAL\
--id $(web_acl_id) |
jq ".WebACL.Rules [] |
select (.Name == \"$web_acl_rule_name\")"
}
web_acl_name=MyACL
web_acl_rule_name=MyRateLimitingRule
web_acl_rule