1
1
data "aws_ssoadmin_instances" "ssoadmin_instances" {}
2
2
3
3
data "aws_identitystore_group" "aws" {
4
- for_each = toset (
4
+ for_each = local . enable_sso ? toset (
5
5
flatten ([
6
6
for account in flatten ([
7
7
for unit_name , unit in local . organization_config [" units" ] : [
8
8
for account_name in keys (local. organization_config [" units" ][unit_name ][" accounts" ]) : local . organization_config [" units" ][unit_name ][" accounts" ][account_name ]
9
9
]
10
10
]) : keys (account[" group_assignments" ])
11
11
])
12
- )
12
+ ) : toset ([])
13
13
14
14
identity_store_id = tolist (data. aws_ssoadmin_instances . ssoadmin_instances . identity_store_ids )[0 ]
15
15
@@ -20,7 +20,7 @@ data "aws_identitystore_group" "aws" {
20
20
}
21
21
22
22
resource "aws_ssoadmin_permission_set" "permission_set" {
23
- for_each = local. sso_permission_sets
23
+ for_each = local. enable_sso ? local . sso_permission_sets : {}
24
24
25
25
instance_arn = tolist (data. aws_ssoadmin_instances . ssoadmin_instances . arns )[0 ]
26
26
name = each. key
@@ -30,7 +30,7 @@ resource "aws_ssoadmin_permission_set" "permission_set" {
30
30
}
31
31
32
32
resource "aws_ssoadmin_managed_policy_attachment" "attachment" {
33
- for_each = {
33
+ for_each = local . enable_sso ? {
34
34
for attachment in flatten ([
35
35
for permission_set_name , permission_set in local . sso_permission_sets : {
36
36
for managed_policy_name in lookup (permission_set, " managed_policies" , []) : " ${ permission_set_name } _${ managed_policy_name } " => {
@@ -39,27 +39,27 @@ resource "aws_ssoadmin_managed_policy_attachment" "attachment" {
39
39
}
40
40
}
41
41
]) : keys (attachment)[0 ] => attachment[keys (attachment)[0 ]]
42
- }
42
+ } : {}
43
43
44
44
instance_arn = tolist (data. aws_ssoadmin_instances . ssoadmin_instances . arns )[0 ]
45
45
managed_policy_arn = " arn:aws:iam::aws:policy/${ each . value [" managed_policy_name" ]} "
46
46
permission_set_arn = aws_ssoadmin_permission_set. permission_set [each . value [" permission_set_name" ]]. arn
47
47
}
48
48
49
49
resource "aws_ssoadmin_permission_set_inline_policy" "policy" {
50
- for_each = {
50
+ for_each = local . enable_sso ? {
51
51
for permission_set_name in flatten ([
52
52
for permission_set_name , permission_set in local . sso_permission_sets : permission_set_name if lookup (local. sso_permission_sets [permission_set_name ], " inline_policy" , " " ) != " "
53
53
]) : permission_set_name = > local.sso_permission_sets[permission_set_name][" inline_policy" ]
54
- }
54
+ } : {}
55
55
56
56
inline_policy = each. value
57
57
instance_arn = aws_ssoadmin_permission_set. permission_set [each . key ]. instance_arn
58
58
permission_set_arn = aws_ssoadmin_permission_set. permission_set [each . key ]. arn
59
59
}
60
60
61
61
resource "aws_ssoadmin_account_assignment" "assignment" {
62
- for_each = {
62
+ for_each = local . enable_sso ? {
63
63
for assignment in flatten ([
64
64
for unit_name , unit in local . organization_config [" units" ] : [
65
65
for account_name in keys (local. organization_config [" units" ][unit_name ][" accounts" ]) : [
@@ -73,7 +73,7 @@ resource "aws_ssoadmin_account_assignment" "assignment" {
73
73
]
74
74
]
75
75
]) : keys (assignment)[0 ] => assignment[keys (assignment)[0 ]]
76
- }
76
+ } : {}
77
77
78
78
instance_arn = aws_ssoadmin_permission_set. permission_set [each . value [" permission_set" ]]. instance_arn
79
79
permission_set_arn = aws_ssoadmin_permission_set. permission_set [each . value [" permission_set" ]]. arn
0 commit comments