Terraform N 账户提供商

问题描述 投票:0回答:0

我有以下设置。我将 Okta 与 AWS Organizations 和 Terraform 结合使用。我想通过 Terraform 代码在所有账户中包含用于 AWS Client VPN 的身份提供商。我在想我可以创建一个具有动态配置的提供者列表来担任特定角色,但它似乎不起作用。创建单独的提供者超出了范围,因为使用的帐户数量有数百个。

要点:

  1. 帐户列表有数百个 - 没有任何循环的正常方式创建提供者超出了范围
  2. 我希望能够为所有这些帐户创建所有特定资源(目前我有一个单独的模块,我正在配置所有资源)

示例代码:

provider "aws" {
    alias   = "all_accounts"
    access_key = var.aws_access_key
    secret_key = var.aws_secret_key
# THIS DYNAMIC SEEMS LIKE ITS NOT WORKING
#   dynamic "assume_role" {
#       for_each = local.MAP_OF_ACCOUNT_IDS_AND_ROLES
#       content {
#           role_arn = each.value
#       }
#   }
    region = "eu-central-1"
}

module "my_module" {
    source = "./modules/my_module"
    count         = length(local.MAP_OF_ACCOUNT_IDS_AND_ROLES)
    providers      = {
        aws = aws.all_accounts[count.index]
    }
}

你知道如何在地形中做到这一点吗?

amazon-web-services terraform devops terraform-provider-aws okta
© www.soinside.com 2019 - 2024. All rights reserved.