使用Terraform时如何查询2个不同的Azure目录?

时间:2019-08-22 14:58:10

标签: azure terraform

我正在使用terraform在一个Azure目录中配置基础结构,因此我将Azure CLI设置为使用该订阅:

az account set --subscription xxxxxxxx-0000-xxxx-YYYY-zzzzzzzzzzzz

设置的一部分是将Active Directory组添加到APIM管理。

我创建了这些组,并使用local-exec中的az cli查询AD的ID。

但是,Active Directory与创建基础结构的位置在不同的订阅中,因此此步骤失败。

如何为该呼叫切换目录/订阅?

1 个答案:

答案 0 :(得分:0)

  

我创建了组,并使用local-exec中的az cli查询AD的ID。

您可以使用数据源azuread_group查询组和/或管理资源azuread_group而不是az cli

要对多个订阅使用数据源/资源,您应使用不同的subscription_idmultiple providers with aliases进行身份验证,如下所示:

provider "azuread" {
  subscription_id = "xxxxxxxx-0000-xxxx-YYYY-zzzzzzzzzzzz"
}

provider "azuread" {
  subscription_id = "another-subscription-id"
  alias           = "custom"
}

resource "azurerm_api_management" "test" {
...
}

resource "azuread_group" "mygroup" {
  provider = azuread.custom
  name     = "my-group"
}