AWS:使用 cloudformation 模板将 WAF 附加到 api 网关

sir*_*han 3 amazon-web-services aws-cloudformation aws-api-gateway

我已经在我的 AWS 账户中创建了 WAF,我想将它与我的 API 网关休息端点集成。

我发现下面的命令将 WAF 与 API 网关休息端点集成,但我必须使用 Cloudformation 模板做同样的事情。

aws waf-regional associate-web-acl \
--web-acl-id 'aabc123a-fb4f-4fc6-becb-2b00831cadcf' \
--resource-arn 'arn:aws:apigateway:{region}::/restapis/4wk1k4onj3/stages/prod'
Run Code Online (Sandbox Code Playgroud)

AWS 文档中我也无法弄清楚如何将 WAF 与 API 网关端点连接。

以下是 WAF 配置在 AWS UI 中的外观: 在此处输入图片说明

sir*_*han 5

以下是将 WAF 与 AWS 中任何 WAF 支持的资源集成的方法:https : //docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html

"MyWebACLAssociation": {
  "Type": "AWS::WAFRegional::WebACLAssociation",
  "Properties": {
    "ResourceArn": { "Ref": "MyLoadBalancer" },
    "WebACLId": { "Ref": "MyWebACL" }
  }
}
Run Code Online (Sandbox Code Playgroud)

编辑:较新的 WAFv2 的文档:https ://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html