/ users.tf
users.tf
 1  resource "aws_iam_user" "serverless_users" {
 2    name  = var.serverless_users[count.index]
 3    count = length(var.serverless_users)
 4    tags  = { Purpose = "Serverless API access" }
 5  }
 6  
 7  resource "aws_iam_group" "serverless_users" {
 8    name = "serverless-users"
 9    path = "/users/"
10  }
11  
12  resource "aws_iam_access_key" "serverless_users" {
13    user    = aws_iam_user.serverless_users[count.index].name
14    count   = length(aws_iam_user.serverless_users)
15    # GPG key for encrypting the secret key
16    pgp_key = file("files/webiny@status.im.gpg")
17  }
18  
19  resource "aws_iam_group_membership" "serverless_users" {
20    name  = "serverless-group-membership"
21    group = aws_iam_group.serverless_users.name
22    users = aws_iam_user.serverless_users.*.name
23  }
24  
25  resource "aws_iam_group_policy_attachment" "serverless_users" {
26    group      = aws_iam_group.serverless_users.name
27    policy_arn = var.serverless_iam_policy
28  }