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

使用Terraform部署Azure资源时Network Security Rule创建失败排查

问题分析与修复方案

错误原因

你的Terraform配置中,azurerm_network_security_rule资源使用了单数形式的地址前缀参数,而当前AzureRM Provider版本要求使用复数数组形式的参数。Azure API接收请求时,无法将字符串格式的单数参数解析为预期的数组类型,因此返回InvalidRequestFormat错误。

具体来说,配置中的:

  • source_address_prefix = "*"
  • destination_address_prefix = "*"

这两个参数在新版本AzureRM Provider中已被弃用,API期望接收数组格式的参数值。

修复后的配置

将单数参数替换为复数数组形式,修正后的完整配置如下:

resource "azurerm_resource_group" "example" {
  name     = "example-resource-group"
  location = "West US"
}

resource "azurerm_virtual_network" "example" {
  name                = "example-vnet"
  address_space       = ["10.0.0.0/16"]
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
}

resource "azurerm_subnet" "example" {
  name                 = "example-subnet"
  resource_group_name  = azurerm_resource_group.example.name
  virtual_network_name = azurerm_virtual_network.example.name
  address_prefixes     = ["10.0.1.0/24"]
}

resource "azurerm_network_security_group" "example" {
  name                = "example-nsg"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
}

resource "azurerm_network_security_rule" "example" {
  name                        = "example-nsg-rule"
  priority                    = 100
  direction                   = "Inbound"
  access                      = "Allow"
  protocol                    = "Tcp"
  source_port_range           = "*"
  destination_port_range      = "22"
  # 替换为复数数组形式的参数
  source_address_prefixes     = ["*"]
  destination_address_prefixes = ["*"]
  resource_group_name         = azurerm_resource_group.example.name
  network_security_group_name = azurerm_network_security_group.example.name
}

额外检查点

  • 确认使用的AzureRM Provider版本:建议使用3.x及以上版本,这类版本对NSG规则的参数格式有明确要求。
  • 端口范围参数:如果仅指定单个端口,source_port_range和destination_port_range使用字符串(如"22")是合法的,无需修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 15:25:09