AWS WafV2 OR 语句/IPSetReference

AWS WafV2 OR Statement / IPSetReference

我正在尝试理解这个很棒的文档: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-orstatementone.html

这告诉我要这样写:

Statements: 
    - StatementTwo

我想做的事情: 我想确保 IP 位于我创建的两个 - 三个不同 IPSet 之一中。我想避免创建多个规则,因为据我了解,每个规则每月花费 1 美元。我想要多个 IP 集的唯一原因是要清楚为什么每个 IP 都添加到每个集。 (家庭办公室、常规办公室、顾问等)。

我试过 一些 变体:

 Rules:
        - Name: WafIpRule
          Priority: 1
          Action:
            Allow: {}
          VisibilityConfig:
            SampledRequestsEnabled: false
            CloudWatchMetricsEnabled: true
            MetricName: !Sub web${Environment}AllowWhitelistedIps
          Statement:
            Statements:
              - IPSetReferenceStatement:
                  Arn: !GetAtt IpStuff1.Arn
              - IPSetReferenceStatement:
                  Arn: !GetAtt IpStuff2.Arn

这可能吗?如果是如何?或者我应该去合并 IpSets/Do 单独的规则?

我似乎可以通过控制台执行此操作,所以看起来应该可以...

有点尴尬,因为这与我的尝试非常接近,但一点点橡皮回避就大有帮助了。

我不确定 AWS 是否真的将其计为 2 个(或更多)规则,但他们确实计算了使用的 WCU(所以我假设它会)。

  Statement:
    OrStatement:
      Statements:
        - IPSetReferenceStatement:
            Arn: !GetAtt IpList1.Arn
        - IPSetReferenceStatement:
            Arn: !GetAtt IpList2.Arn

我会把这个留在这里以备将来Google-fu's