Amazon web services 通过aws资源访问管理器中的terraform与多个aws帐户共享多个DNS域

Amazon web services 通过aws资源访问管理器中的terraform与多个aws帐户共享多个DNS域,amazon-web-services,amazon-route53,terraform-provider-aws,Amazon Web Services,Amazon Route53,Terraform Provider Aws,我正在使用AWS Route53解析器转发发送到内部域列表(本地)的DNS请求。通过terraform,我想将我创建的规则共享给公司的其他帐户,因此我有以下内容: # I create as much share endpoint as domain I have, so If I have 30 domains, I'll make 30 endpoint RAM: resource "aws_ram_resource_share" "endpoint_share

我正在使用AWS Route53解析器转发发送到内部域列表(本地)的DNS请求。通过terraform,我想将我创建的规则共享给公司的其他帐户,因此我有以下内容:

# I create as much share endpoint as domain I have, so If I have 30 domains, I'll make 30 endpoint RAM:
resource "aws_ram_resource_share" "endpoint_share" {
  count                     = length(var.forward_domain)
  name                      = "route53-${var.forward_domain[count.index]}-share"
  allow_external_principals = false
}
# Here I share every single endpoint with all the AWS ACcount we have 
resource "aws_ram_principal_association" "endpoint_ram_principal" {
  count              = length(var.resource_share_accounts)
  principal          = var.resource_share_accounts[count.index]

  resource_share_arn = {
    for item in aws_ram_resource_share.endpoint_share[*]:
        item.arn
  }
}
最后一个块调用第一个块(列表)的arn输出。 现在,最后一个块不起作用,我不知道如何使用多个计数,当我运行这个时,我得到以下错误:

Error: Invalid 'for' expression

line 37: Key expression is required when building an object.
你知道怎么做吗

Terraform version: 0.12.23

在资源共享中使用方括号,如下所示:

resource_share_arn = [
  for item in aws_ram_resource_share.endpoint_share[*]:
    item.arn
]