Beim Hinzufügen von Ressourcen zum Schutz mit AWS Shield Advanced über die Konsole erstellte der „Assistent“ eine Ratenbegrenzungsregel für die Web-ACL, die ich in der Konsole unter
- AWS WAF > Web-ACLs > MyACL > Regeln > MyRateLimitingRule
Wie kann ich die Details dieser Regel programmgesteuert abrufen (und festlegen)? Ich habe versucht, die CLI mit den Befehlen waf
und zu verwenden wafv2
, aber keiner von beiden hat etwas Nützliches zurückgegeben. Das Beste, was ich bekommen habe, war
aws wafv2 list-available-managed-rule-groups --scope REGIONAL
das zumindest das AWSManagedRulesCommonRuleSet zurückgibt, das auch oberhalb von MyRateLimitingRule sichtbar ist. Kann die CLI zurückgeben, was ich brauche, oder gibt es eine andere Möglichkeit, diese Details abzurufen (vielleicht ein Python-Skript, das an die API geht)?
Antwort1
Dieses Skript gibt die erforderliche Antwort (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