17 lines
535 B
HCL
17 lines
535 B
HCL
locals {
|
|
user_policies = flatten([for name, policies in var.iam_users : [for policy in policies.policies : { user = name, policy = policy }]])
|
|
users = toset([for user in local.user_policies : user.user])
|
|
}
|
|
|
|
resource "aws_iam_user" "iam_user" {
|
|
for_each = local.users
|
|
|
|
name = each.key
|
|
}
|
|
|
|
resource "aws_iam_user_policy_attachment" "policy_attachment" {
|
|
count = length(local.user_policies)
|
|
|
|
user = aws_iam_user.iam_user[local.user_policies[count.index].user].name
|
|
policy_arn = local.user_policies[count.index].policy
|
|
} |