如何使用 CloudFormation 将 CloudFront 分发集成到 AWS WAF?

ch *_*hna 5 amazon-web-services amazon-cloudfront aws-cloudformation amazon-waf

我正在尝试使用 CloudFormation 将 CloudFront 分配添加到 AWS WAF 并尝试过这个,

"Type": "AWS::WAFRegional::WebACLAssociation",
            "Properties": {
                "ResourceArn": "arn:aws:cloudfront::AccountID:distribution/CloudFrontID",
                "WebACLId": {
                    "Ref": "WebACLName"
                }
Run Code Online (Sandbox Code Playgroud)

但我最终遇到了这个错误:引用的项目不存在。(服务:AWSWAFRegional;状态代码:400;错误代码:WAFNonexistentItemException;请求 ID:149453cd-1606-11e8-86b2-a3efdb49d9d1)

Lau*_*ard 6

AWS::WAFRegional::*实际上是为了与应用程序负载均衡器关联。您需要使用AWS::WAF::*类型(不带“区域”)。

然后,对于关联,您必须从 CloudFront 发行版本身进行。就像这样:

"myDistribution": {
  "Type": "AWS::CloudFront::Distribution",
  "Properties": {
    "DistributionConfig": {    
      "WebACLId": { "Ref" : "MyWebACL" },
Run Code Online (Sandbox Code Playgroud)

CloudFormation 文档中对此部分进行了解释。