我有以下设置。我将 Okta 与 AWS Organizations 和 Terraform 结合使用。我想通过 Terraform 代码在所有账户中包含用于 AWS Client VPN 的身份提供商。我在想我可以创建一个具有动态配置的提供者列表来担任特定角色,但它似乎不起作用。创建单独的提供者超出了范围,因为使用的帐户数量有数百个。
要点:
示例代码:
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]
}
}
你知道如何在地形中做到这一点吗?