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

如何通过Terraform为Azure API Management产品添加多个组?

解决Azure APIM产品关联多用户组的Terraform实现方案

要给单个Azure API Management产品关联多个用户组,你可以通过Terraform的for_each遍历功能,批量创建azurerm_api_management_product_group资源实例,每个实例对应一个用户组的关联关系,具体实现如下:

直接遍历组名列表

resource "azurerm_api_management_product_group" "product_groups" {
  for_each            = toset(["developers", "guests"]) # 替换为你需要关联的所有组名
  product_id          = "test_product"
  group_name          = each.value
  api_management_name = "test-api-management"
  resource_group_name = "test-rg"
}

使用变量管理组名(更灵活)

如果需要后续方便调整组列表,可以定义变量来管理:

variable "apim_target_groups" {
  type    = set(string)
  default = ["developers", "guests"] # 可按需添加/删除组名
}

resource "azurerm_api_management_product_group" "product_groups" {
  for_each            = var.apim_target_groups
  product_id          = "test_product"
  group_name          = each.value
  api_management_name = "test-api-management"
  resource_group_name = "test-rg"
}

原理说明

for_each会遍历你指定的每个组名,自动为每个组创建一条独立的产品-组关联记录,最终效果和你截图中手动添加多个组的结果完全一致。后续如果需要调整关联的组,只需修改列表中的组名,Terraform会自动创建/销毁对应的关联资源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 23:01:17