From d78c661a3a94a9e73984170db006ab55046a0bdb Mon Sep 17 00:00:00 2001 From: Jorge Turrado Date: Sun, 8 Oct 2023 23:48:42 +0200 Subject: [PATCH] feat: add a second identity for role assumtions Signed-off-by: Jorge Turrado --- terraform/main.tf | 4 ++ terraform/modules/aws/iam/main.tf | 57 +++++++++++++++++++++++++++- terraform/modules/aws/iam/outputs.tf | 6 ++- 3 files changed, 65 insertions(+), 2 deletions(-) diff --git a/terraform/main.tf b/terraform/main.tf index e22a61e..afb17e6 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -342,6 +342,10 @@ module "github_secrets" { name = "TF_AWS_ACCOUNT_ID" value = data.aws_caller_identity.current.account_id }, + { + name = "TF_AWS_WORKLOAD_ROLE" + value = module.aws_iam.workload_role_arn + }, { name = "TF_GCP_SA_CREDENTIALS" value = module.gcp_iam.e2e_user_credentials diff --git a/terraform/modules/aws/iam/main.tf b/terraform/modules/aws/iam/main.tf index 7256e94..ee0a327 100644 --- a/terraform/modules/aws/iam/main.tf +++ b/terraform/modules/aws/iam/main.tf @@ -1,3 +1,8 @@ + +locals { + workload_role_name = "keda-workload-1" +} + resource "aws_iam_user" "e2e_test" { name = "e2e-test-user" path = "/" @@ -131,7 +136,7 @@ resource "aws_iam_policy" "policy" { { "Effect": "Allow", "Action": "sqs:*", - "Resource": "arn:aws:sqs:*:589761922677:*" + "Resource": "arn:aws:sqs:regular-queue-*:589761922677:*" }, { "Effect": "Allow", @@ -151,8 +156,58 @@ resource "aws_iam_policy" "policy" { "arn:aws:kinesis:*:589761922677:*/*/consumer/*:*", "arn:aws:kinesis:*:589761922677:stream/*" ] + }, + { + "Effect": "Allow", + "Action": "sts:AssumeRole", + "Resource": "arn:aws:iam::*:role/${local.workload_role_name}" } ] } EOF } + +resource "aws_iam_role" "workload_role" { + name = local.workload_role_name + tags = var.tags + + assume_role_policy = <