【发布时间】:2021-05-05 18:25:57
【问题描述】:
我有一组复杂的复杂对象,例如通过数据接收的 DynamoDB 表
data "aws_dynamodb_table" "table" {
for_each = toset([
"table-1",
"table-2",
"table-3",
])
name = each.value
}
我想在不同的地方使用一些表格属性,例如创建事件源映射到 lambda 函数,这很容易:
resource "aws_lambda_event_source_mapping" "mapping" {
for_each = data.aws_dynamodb_table.table
batch_size = 100
event_source_arn = each.value.stream_arn
function_name = // some function ARN
starting_position = "LATEST"
}
现在我遇到了困难:它如何获取一些特定字段的列表,例如 ARN 表,以便我可以直接在 IAM 资源策略中使用它? p>
statement {
actions = [
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:Query",
"dynamodb:Scan"
]
# that's not how it works
resources = tolist(data.aws_dynamodb_table.table.*.arn)
effect = "Allow"
}
我确信 terraform 文档给了我一个答案,但我找不到它。
【问题讨论】:
标签: amazon-web-services terraform