エラー: Datadog に sts:AssumeRole を実行する権限がない

このエラーは通常、Datadog インテグレーションロールに関連する信頼ポリシーに問題があることを示しています。ほとんどの場合、この問題はロールの委譲プロセスによって引き起こされます。

エラーに記載されている AWS アカウントについて、以下の点をご確認ください。

  1. IAM ロールを作成する際、Datadog AWS インテグレーションページで正しい IAM ロール名を使用していることを確認してください。AWS または Datadog に余分なスペースや文字があると、ロールの委任が失敗します。CloudFormation を使用してロールをデプロイした場合、デフォルトの IAM ロール名は DatadogIntegrationRole に設定されています。

    AWS Create IAM Role Review ページで、Role name に DatadogAWSIntegrationRole、Trusted entities にアカウント 464622532012、Policies に DatadogAWSIntegrationPolicy が記載されている

  2. Datadog のアカウント ID 464622532012Another AWS account の下に入力されていることを確認してください。他のアカウント ID を入力するとインテグレーションに失敗します。また、Required MFAunchecked であることを確認してください。

    AWS Create IAM Role ページで、Type of Trusted Entity に Another AWS Account を選択し、アカウント ID に 464622532012 を入力し、必須の MFA ボタンのチェックを外しています

  3. Datadog AWS インテグレーションページAccount Details で新しい AWS External ID を生成し、Save をクリックします。

    AWS Role Name フィールドと AWS External ID フィールド、Generate New ID ボタンがある Datadog AWS インテグレーションページ

  4. 新しく生成された AWS External ID を AWS の信頼ポリシーに追加します。

    sts:ExternalId パラメータをハイライトした AWS Trust Policy ドキュメント

なお、エラーは、変更が反映されるまでの数時間、UI で継続する可能性があります

1 つまたはいくつかの地域に限定して STS AssumeRole エラーが表示される場合

Datadog is not authorized to perform action sts:AssumeRole Account affected:<account_id> Regions affected: us-east-1, eu-west-1 

問題の原因は、AWS Service Control Policies にある可能性があります。

Service control policies (SCPs) are a type of organization policy that you can use to manage permissions in your organization. SCPs offer central control over the maximum available permissions for all accounts in your organization. SCPs help you to ensure your accounts stay within your organization’s access control guidelines.

インテグレーションページでのエラーを取り除くには、AWS インテグレーションで General タブで地域を除外するか、Update an AWS integration API を使用してください。

さらにヘルプが必要な場合は、Datadog サポートまでお問い合わせください。

その他の参考資料

お役に立つドキュメント、リンクや記事: