微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

创建 WAFv2 WebACL 时出错 WAFInvalidParameterException

如何解决创建 WAFv2 WebACL 时出错 WAFInvalidParameterException

<div class="my-3">

                            @if (ViewBag.Success != null)
                            {
                                <div class="alert alert-success" role="alert">
                                    @ViewBag.Success
                                </div>
                            }

                            @if (ViewBag.Error != null)
                            {
                                <div class="alert alert-danger" role="alert">
                                    @ViewBag.Error
                                </div>
                            }

                        </div>

我在尝试使用 terraform 部署 WAFV2 时遇到此错误,请提供任何帮助。

这是 WAFv2 代码的一小部分:

Error: Error creating WAFv2 WebACL: WAFInvalidParameterException: Error reason: You have used none or multiple values for a field that requires exactly one value.,field: RULE_ACTION,parameter: RuleAction(block=null,allow=null,count=null)
{
  RespMetadata: {
    StatusCode: 400,RequestID: "24106754-b0db-4497-8e19-e72f8908dc19"
  },Field: "RULE_ACTION",Message_: "Error reason: You have used none or multiple values for a field that requires exactly one value.,count=null)",Parameter: "RuleAction(block=null,Reason: "You have used none or multiple values for a field that requires exactly one value."
}

  on .terraform/modules/wafv2/main.tf line 18,in resource "aws_wafv2_web_acl" "main":
  18: resource "aws_wafv2_web_acl" "main" {

我想弄清楚为什么错误仍然反映出我的 WAFV2 可能有问题?

解决方法

发生此错误的原因可能有多种,因此如果没有看到完整的 Terraform,就很难判断发生了什么。

我见过这种情况发生在我的 ACL 包含两条规则的情况:rule_group_reference_statementrate_based_statement

我的问题是规则组引用需要一个 override_action:

override_action {
  none {}
}

我既没有意识到也没有意识到需要 action,但我在此处发现了这一点:https://github.com/hashicorp/terraform-provider-aws/issues/14094#issuecomment-655625254

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。