You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform部署AWS WAFv2 Web ACL时visibility_config配置报错求助

问题分析与解决方案

核心问题定位

你遇到的两类错误根源是代码缩进错误和ignore.tf的配置不当:

  1. 第一个错误:rule块内的visibility_config被错误嵌套在statement块内部,导致Terraform无法识别到rule级别的visibility配置。
  2. 第二个错误:ignore.tf第78行的资源中错误添加了visibility_config块,而该资源类型并不支持这个配置项。

代码修复步骤

1. 修正aws_wafv2_web_acl的rule块缩进

将visibility_config从statement块中移出,放到rule块的直接子层级,确保和override_action、statement同级:

//ip-set
resource "aws_wafv2_ip_set" "this" {
  name               = "${var.name}-ip-whitelist"
  description        = var.description
  scope              = var.scope
  ip_address_version = var.ip-add-ver
  addresses          = var.ip-address
  tags               = var.tags
}


//web acl
resource "aws_wafv2_web_acl" "this" {
  name        = "${var.name}-web-acl"
  description = "${var.name}-web-acl"
  scope       = var.scope
  tags        = var.tags

  default_action {
    allow {}
  }
  
  visibility_config {
    cloudwatch_metrics_enabled = false
    metric_name                = "friendly-rule-metric-name"
    sampled_requests_enabled   = false
  }

  rule {
    name     = "ip-set-rule"
    priority = 1

    override_action {
      count {}
    }

    statement {
      ip_set_reference_statement {
        arn = aws_wafv2_ip_set.this.arn
      }
    }

    // 修正:将visibility_config移到statement块外部,属于rule的直接子元素
    visibility_config {
      cloudwatch_metrics_enabled = false
      metric_name                = "friendly-rule-metric-name"
      sampled_requests_enabled   = false
    }
  }
}

//acl association
resource "aws_wafv2_web_acl_association" "default_web_acl_association" {
  resource_arn = var.target_resource
  web_acl_arn  = aws_wafv2_web_acl.this.arn
}

2. 处理ignore.tf的错误

打开ignore.tf文件定位到第78行:

  • 检查对应的资源类型,若为aws_wafv2_ip_set或aws_wafv2_web_acl_association这类不支持visibility_config的资源,直接删除该visibility_config块。
  • 对照该资源的官方配置文档,只保留其支持的配置项。

验证修复

完成修改后,执行terraform validate检查语法合法性,确认无错误后再执行terraform apply。

内容的提问来源于stack exchange,提问作者BigRed247

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 20:45:22