@@ -87,6 +87,7 @@ const datadogIntegration = new aws.iam.Role('integration@datadog', {
87
87
assumeRolePolicy : aws . iam . assumeRolePolicyForPrincipal ( {
88
88
AWS : '417141415827' ,
89
89
} ) ,
90
+ managedPolicyArns : [ aws . iam . ManagedPolicy . SecurityAudit ] ,
90
91
} ) ;
91
92
92
93
new aws . iam . RolePolicy ( 'integration@datadog' , {
@@ -116,6 +117,8 @@ new aws.iam.RolePolicy('integration@datadog', {
116
117
'dynamodb:List*' ,
117
118
'dynamodb:Describe*' ,
118
119
'ec2:Describe*' ,
120
+ 'ec2:GetTransitGatewayPrefixListReferences' ,
121
+ 'ec2:SearchTransitGatewayRoutes' ,
119
122
'ecs:Describe*' ,
120
123
'ecs:List*' ,
121
124
'elasticache:Describe*' ,
@@ -129,12 +132,12 @@ new aws.iam.RolePolicy('integration@datadog', {
129
132
'es:ListTags' ,
130
133
'es:ListDomainNames' ,
131
134
'es:DescribeElasticsearchDomains' ,
132
- 'events:CreateEventBus' ,
133
135
'fsx:DescribeFileSystems' ,
134
136
'fsx:ListTagsForResource' ,
135
137
'health:DescribeEvents' ,
136
138
'health:DescribeEventDetails' ,
137
139
'health:DescribeAffectedEntities' ,
140
+ 'iam:ListAccountAliases' ,
138
141
'kinesis:List*' ,
139
142
'kinesis:Describe*' ,
140
143
'lambda:GetPolicy' ,
@@ -148,6 +151,8 @@ new aws.iam.RolePolicy('integration@datadog', {
148
151
'logs:TestMetricFilter' ,
149
152
'organizations:Describe*' ,
150
153
'organizations:List*' ,
154
+ 'pi:GetResourceMetrics' ,
155
+ 'pi:DescribeDimensionKeys' ,
151
156
'rds:Describe*' ,
152
157
'rds:List*' ,
153
158
'redshift:DescribeClusters' ,
@@ -169,6 +174,8 @@ new aws.iam.RolePolicy('integration@datadog', {
169
174
's3:ListAllMyBuckets' ,
170
175
's3:ListBucket' ,
171
176
's3:PutBucketNotification' ,
177
+ 'servicequotas:ListServiceQuotas' ,
178
+ 'servicequotas:GetServiceQuota' ,
172
179
'ses:Get*' ,
173
180
'sns:List*' ,
174
181
'sns:Publish' ,
@@ -177,6 +184,8 @@ new aws.iam.RolePolicy('integration@datadog', {
177
184
'states:DescribeStateMachine' ,
178
185
'support:DescribeTrustedAdvisor*' ,
179
186
'support:RefreshTrustedAdvisorCheck' ,
187
+ 'synthetics:DescribeCanaries' ,
188
+ 'synthetics:GetCanaryRuns' ,
180
189
'tag:GetResources' ,
181
190
'tag:GetTagKeys' ,
182
191
'tag:GetTagValues' ,
@@ -186,6 +195,43 @@ new aws.iam.RolePolicy('integration@datadog', {
186
195
Effect : 'Allow' ,
187
196
Resource : '*' ,
188
197
} ,
198
+ {
199
+ Action : [
200
+ 'application-autoscaling:DescribeScalingActivities' ,
201
+ 'application-autoscaling:DescribeScalingPolicies' ,
202
+ 'athena:ListWorkGroups' ,
203
+ 'backup:ListRecoveryPointsByBackupVault' ,
204
+ 'bcm-data-exports:GetExport' ,
205
+ 'bcm-data-exports:ListExports' ,
206
+ 'cassandra:Select' ,
207
+ 'cur:DescribeReportDefinitions' ,
208
+ 'ec2:GetSnapshotBlockPublicAccessState' ,
209
+ 'glacier:GetVaultNotifications' ,
210
+ 'glue:ListRegistries' ,
211
+ 'iam:GenerateCredentialReport' ,
212
+ 'iam:GetAccountAuthorizationDetails' ,
213
+ 'iam:GetAccountSummary' ,
214
+ 'iam:GetPolicyVersion' ,
215
+ 'iam:ListVirtualMFADevices' ,
216
+ 'kafka:ListClustersV2' ,
217
+ 'lightsail:GetInstancePortStates' ,
218
+ 's3:ListAccessGrants' ,
219
+ 'savingsplans:DescribeSavingsPlanRates' ,
220
+ 'savingsplans:DescribeSavingsPlans' ,
221
+ 'sqs:getqueueattributes' ,
222
+ 'timestream:DescribeEndpoints' ,
223
+ 'timestream:ListTables' ,
224
+ 'waf-regional:ListRuleGroups' ,
225
+ 'waf-regional:ListRules' ,
226
+ 'waf:ListRuleGroups' ,
227
+ 'waf:ListRules' ,
228
+ 'wafv2:GetIPSet' ,
229
+ 'wafv2:GetRegexPatternSet' ,
230
+ 'wafv2:GetRuleGroup' ,
231
+ ] ,
232
+ Effect : 'Allow' ,
233
+ Resource : '*' ,
234
+ } ,
189
235
] ,
190
236
} ,
191
237
} ) ;
0 commit comments