콘솔을 통해 AWS Shield Advanced로 보호할 리소스를 추가하는 동안 '마법사'가 웹 ACL 속도 제한 규칙을 생성했는데, 이는 콘솔의 아래에서 볼 수 있습니다.
- AWS WAF > 웹 ACL > MyACL > 규칙 > MyRateLimitingRule
해당 규칙의 세부 사항을 프로그래밍 방식으로 어떻게 얻고 설정할 수 있습니까? waf
및 명령을 모두 사용하여 CLI를 사용해 보았지만 wafv2
유용한 정보를 반환하지 않았습니다. 내가 가진 가장 가까운 것은
aws wafv2 list-available-managed-rule-groups --scope REGIONAL
이는 최소한 MyRateLimitingRule 위에 표시되는 AWSManagedRulesCommonRuleSet을 반환합니다. CLI가 필요한 것을 반환할 수 있습니까? 아니면 이러한 세부 정보를 얻을 수 있는 다른 방법이 있습니까(아마도 API로 이동하는 Python 스크립트)?
답변1
이 스크립트는 필요한 응답(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