Missing `trustedadvisor` in Datadog integration role

Open Beginner friendly
#342 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
88/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
aws, yaml
Domain
cloud

Research direction

Open aws/datadog_integration_role.yaml and inspect the inline DatadogAWSIntegrationPolicy around the existing Trusted Advisor permissions. Compare the policy with the AWS Trusted Advisor integration documentation and update the actions as appropriate. Done means the template grants the required trustedadvisor permissions and handles the legacy support actions consistently with the documented transition.

Written by the indexing model from the issue text.

Description

Summary

The AWS Trusted Advisor integration docs state that as of 1 June 2026, Datadog collects Trusted Advisor data via the newer Trusted Advisor API and requires:

  • trustedadvisor:ListRecommendations
  • trustedadvisor:ListRecommendationResources

and that support:describe* / support:refresh* are no longer required after that date.

aws/datadog_integration_role.yaml still grants only the legacy Support API actions and has never been updated to include the trustedadvisor: ones. Anyone who provisioned the integration role from the published CloudFormation template therefore has a role that cannot make the calls Datadog now needs.

Expected

The integration role template grants the permissions the documentation says the integration requires.

Actual

The only Trusted Advisor grants in the template are the legacy Support API ones, in the inline DatadogAWSIntegrationPolicy:

https://github.com/DataDog/cloudformation-template/blob/7202b96d612370cb3a25612d82be766ac1dd5850/aws/datadog_integration_role.yaml#L196-L197

There are no trustedadvisor: permissions anywhere in the file.

Fix

The solution is trivial:

  • Remove the old support:* permissions (if truely unused)
  • Add the two new required trustuedadvisor: permissions
                     - 'states:DescribeStateMachine'
                     - 'states:ListStateMachines'
-                    - 'support:DescribeTrustedAdvisor*'
-                    - 'support:RefreshTrustedAdvisorCheck'
                     - 'tag:GetResources'
                     - 'tag:GetTagKeys'
                     - 'tag:GetTagValues'
+                    - 'trustedadvisor:ListRecommendations'
+                    - 'trustedadvisor:ListRecommendationResources'
                     - 'timestream:DescribeEndpoints'
                     - 'wafv2:ListLoggingConfigurations'
                     - 'xray:BatchGetTraces'
                     - 'xray:GetTraceSummaries'

Retaining the support:* actions alongside them would keep the change backwards-compatible for accounts that have not yet cut over, but it is unclear under what circumstance that is necessary.

Dominant language
Python
Stars
47
Forks
58
Avg merge
1d 18h
Merged PRs (30d)
8

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from DataDog/cloudformation-template

All issues in DataDog/cloudformation-template

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.