Skip to content

Commit 4923a2d

Browse files
committed
eli-204 finessing permissions and boundary permissions
1 parent c68bd6f commit 4923a2d

3 files changed

Lines changed: 18 additions & 6 deletions

File tree

infrastructure/stacks/api-layer/iam_roles.tf

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11

2-
data "aws_iam_policy" "permissions_boundary" {
3-
arn = "arn:aws:iam::${local.current_account_id}:policy/${upper(var.project_name)}-PermissionsBoundary"
4-
}
5-
62

73
# Lambda trust policy
84
data "aws_iam_policy_document" "lambda_assume_role" {
@@ -30,12 +26,12 @@ data "aws_iam_policy_document" "dps_assume_role" {
3026
resource "aws_iam_role" "eligibility_lambda_role" {
3127
name = "eligibility_lambda-role${terraform.workspace == "default" ? "" : "-${terraform.workspace}"}"
3228
assume_role_policy = data.aws_iam_policy_document.lambda_assume_role.json
33-
permissions_boundary = data.aws_iam_policy.permissions_boundary.arn
29+
permissions_boundary = data.aws_iam_policy.assumed_role_permissions_boundary.arn
3430
}
3531

3632

3733
resource "aws_iam_role" "write_access_role" {
3834
name = "external-write-role-${terraform.workspace == "default" ? "" : "-${terraform.workspace}"}"
3935
assume_role_policy = data.aws_iam_policy_document.dps_assume_role.json
40-
permissions_boundary = data.aws_iam_policy.permissions_boundary.arn
36+
permissions_boundary = data.aws_iam_policy.assumed_role_permissions_boundary.arn
4137
}

infrastructure/stacks/iams-developer-roles/github_actions_policies.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ resource "aws_iam_policy" "api_infrastructure" {
8181

8282
# acm
8383
"acm:ListCertificates",
84+
"acm:DescribeCertificate",
85+
"acm:GetCertificate",
8486
],
8587

8688

infrastructure/stacks/iams-developer-roles/iams_permissions_boundary.tf

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,20 @@ data "aws_iam_policy_document" "permissions_boundary" {
4545
}
4646
}
4747

48+
# Allow access to IAM actions for us-east-1 region only
49+
statement {
50+
sid = "AllowIamActionsInUsEast1"
51+
effect = "Allow"
52+
actions = ["iam:*"]
53+
resources = ["*"]
54+
55+
condition {
56+
test = "StringEquals"
57+
variable = "aws:RequestedRegion"
58+
values = ["us-east-1"]
59+
}
60+
}
61+
4862
statement {
4963
sid = "DenyPrivEsculationViaIamRoles"
5064
effect = "Deny"

0 commit comments

Comments
 (0)