@@ -40,13 +40,25 @@ locals {
4040 var . enable_firewall_manager ? " fms.amazonaws.com" : " " ,
4141 var . enable_firewall_manager ? " ram.amazonaws.com" : " " ,
4242 var . enable_guardduty ? " guardduty.amazonaws.com" : " " ,
43+ var . enable_guardduty ? " malware-protection.guardduty.amazonaws.com" : " " ,
4344 var . enable_iam_access_analyzer ? " access-analyzer.amazonaws.com" : " " ,
4445 var . enable_securityhub ? " securityhub.amazonaws.com" : " " ,
4546 ]
4647 )))
48+ remove_nondelegated_principals = toset (compact (
49+ [
50+ " aws-artifact-account-sync.amazonaws.com" ,
51+ " health.amazonaws.com" ,
52+ " ram.amazonaws.com" ,
53+ " malware-protection.guardduty.amazonaws.com" ,
54+ " servicequotas.amazonaws.com" ,
55+ " tagpolicies.tag.amazonaws.com" ,
56+ " wellarchitected.amazonaws.com" ,
57+ ]
58+ ))
4759 # Final principals set with items added and removed
48- aws_service_access_principals = setsubtract (
49- local. access_principals , local. remove_access_principals )
60+ aws_service_access_principals = setsubtract (local . access_principals , local . remove_access_principals )
61+ aws_delegated_principals = var . account_type == " master " ? toset ( setsubtract ( local. aws_service_access_principals , local. remove_nondelegated_principals )) : toset ([] )
5062 # var.enable_artifact ? "" : "",
5163
5264 # enabled_policy_types = toset(compact([
@@ -63,3 +75,15 @@ resource "aws_organizations_organization" "self" {
6375 enabled_policy_types = data. aws_organizations_organization . self . enabled_policy_types
6476 feature_set = " ALL"
6577}
78+
79+ resource "aws_servicecatalog_organizations_access" "self" {
80+ count = var. account_type == " master" ? 1 : 0
81+ enabled = " true"
82+ }
83+
84+ resource "aws_organizations_delegated_administrator" "self" {
85+ for_each = local. aws_delegated_principals
86+ account_id = var. security_administrator_account_id
87+ service_principal = each. key
88+ depends_on = [aws_servicecatalog_organizations_access . self ,aws_organizations_organization . self ]
89+ }
0 commit comments