@@ -33,77 +33,18 @@ resource "aws_iam_role" "backup_role" {
3333  assume_role_policy  =  . aws_iam_policy_document . assume_role . json 
3434}
3535
36- resource  "aws_iam_role_policy"  "backup_role_policy"  {
37-   name  =  " backup_role_policy" 
38-   role  =  . backup_role . id 
36+ resource  "aws_iam_role_policy_attachment"  "backup_role_managed_s3_policy"  {
37+   policy_arn  =  " arn:aws:iam::aws:policy/AWSBackupServiceRolePolicyForS3Backup" 
38+   role        =  . backup_role . name 
39+ }
3940
40-   policy  =  jsonencode ({
41-     Version =  " 2012-10-17" 
42-     Statement =  [
43-       {
44-         Action =  [
45-           " tag:getResources" 
46-         ]
47-         Effect   =  " Allow" 
48-         Resource =  " *" 
49-       },
50-       {
51-         Action =  [
52-           " rds:DescribeDBInstances" 
53-           " rds:DescribeDBClusters" 
54-           " rds:ListTagsForResource" 
55-           " rds:CreateDBSnapshot" 
56-           " rds:DeleteDBSnapshot" 
57-           " rds:CopyDBSnapshot" 
58-           " rds:DescribeDBSnapshots" 
59-           " rds:AddTagsToResource" 
60-         ]
61-         Effect   =  " Allow" 
62-         Resource =  " *" 
63-       },
64-       {
65-         Action =  [
66-           " s3:GetBucketNotification" 
67-           " s3:GetBucketLocation" 
68-           " s3:ListBucket" 
69-           " s3:GetBucketTagging" 
70-           " s3:GetBucketVersioning" 
71-           " s3:GetBucketPublicAccessBlock" 
72-           " s3:GetBucketAcl" 
73-           " s3:GetBucketPolicy" 
74-           " s3:GetObject" 
75-           " s3:GetObjectVersion" 
76-           " s3:GetObjectTagging" 
77-           " s3:GetObjectAcl" 
78-           " s3:PutBucketNotification" 
79-           " s3:ListBucketVersions" 
80-           " events:ListRules" 
81-           " events:PutRule" 
82-           " events:ListTargetsByRule" 
83-           " events:PutTargets" 
84-           " events:RemoveTargets" 
85-           " events:DeleteRule" 
86-           " cloudwatch:GetMetricData" 
87-         ]
88-         Effect   =  " Allow" 
89-         Resource =  " *" 
90-       },
91-       {
92-         Action =  [
93-           " elasticfilesystem:DescribeFileSystems" 
94-           " elasticfilesystem:DescribeBackupPolicy" 
95-           " elasticfilesystem:Backup" 
96-           " elasticfilesystem:DescribeTags" 
97-         ]
98-         Effect   =  " Allow" 
99-         Resource =  " *" 
100-       }
101-     ]
102-   })
41+ resource  "aws_iam_role_policy_attachment"  "backup_role_service_linked_backu"  {
42+   policy_arn  =  " arn:aws:iam::aws:policy/aws-service-role/AWSBackupServiceLinkedRolePolicyForBackup" 
43+   role        =  . backup_role . name 
10344}
10445
105- resource  "aws_iam_role_policy_attachment"  "backup_role_managed_s3_policy "  {
106-   policy_arn  =  " arn:aws:iam::aws:policy/AWSBackupServiceRolePolicyForS3Backup " 
46+ resource  "aws_iam_role_policy_attachment"  "backup_role_service_linked_backu "  {
47+   policy_arn  =  " arn:aws:iam::aws:policy/aws-service-role/AWSBackupServiceRolePolicyForBackup " 
10748  role        =  . backup_role . name 
10849}
10950
0 commit comments