diff --git a/infrastructure/terraform/modules/s3_presignable_bucket/main.tf b/infrastructure/terraform/modules/s3_presignable_bucket/main.tf index d07abd59..6c8bf541 100644 --- a/infrastructure/terraform/modules/s3_presignable_bucket/main.tf +++ b/infrastructure/terraform/modules/s3_presignable_bucket/main.tf @@ -15,8 +15,35 @@ resource "aws_s3_bucket" "bucket" { } } -resource "aws_iam_role" "role" { - name = "s3_presign_role" +resource "aws_iam_user" "presign_frontend_user" { + name = "presign_frontend_user-${var.environment}" + path = "/system/" +} + +resource "aws_iam_access_key" "presign_frontend_user_access_key" { + user = aws_iam_user.presign_frontend_user.name +} + +resource "aws_secretsmanager_secret" "presign_frontend_user_access_key" { + name = "${var.environment}/presign_frontend/access_key" +} + +resource "aws_secretsmanager_secret_version" "presign_frontend_user_access_key" { + secret_id = aws_secretsmanager_secret.presign_frontend_user_access_key.id + secret_string = aws_iam_access_key.presign_frontend_user_access_key.id +} + +resource "aws_secretsmanager_secret" "presign_frontend_user_secret_key" { + name = "${var.environment}/presign_frontend/secret_key" +} + +resource "aws_secretsmanager_secret_version" "presign_frontend_user_secret_key" { + secret_id = aws_secretsmanager_secret.presign_frontend_user_secret_key.id + secret_string = aws_iam_access_key.presign_frontend_user_access_key.secret +} + +resource "aws_iam_role" "presign_frontend_role" { + name = "presign_frontend_role-${var.environment}" assume_role_policy = <