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

使用Terraform配置Azure App Service IP限制与子网访问规则报错咨询

修复方案

报错问题解决

报错原因:cidrhost 函数要求入参必须是带掩码的标准CIDR格式,你传入的是纯IPv4地址,没有后缀掩码标识,所以解析失败。
修复方式:直接将单个IP拼接为/32的CIDR格式即可,无需调用cidrhost函数,修改后的完整配置如下:

site_config {
  dynamic "ip_restriction" {
    for_each = var.ip_address_list
    content {
      ip_address = "${ip_restriction.value}/32"
      action     = "Allow"
      # 优先级从100开始依次递增,避免和子网规则冲突
      priority   = 100 + index(var.ip_address_list, ip_restriction.value)
    }
  }
  # 新增虚拟子网访问限制规则
  ip_restriction {
    name                      = "Subnet"
    action                    = "Allow"
    virtual_network_subnet_id = azurerm_subnet.subnet.id
    priority                  = 200
    ip_address                = null
    service_tag               = null
  }
}

配置注意事项

  • 优先级数值越小规则优先级越高,你可以根据实际业务需求调整IP规则和子网规则的优先级数值
  • 需确保引用的azurerm_subnet.subnet.id为正确的子网资源ID,且该子网已启用Microsoft.Web的Service Endpoint
  • 如果后续需要支持传入带掩码的CIDR地址段,可以额外增加变量校验逻辑,动态判断是否需要拼接/32后缀

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 09:57:01