IAMの画面を操作したことのある人向けにDatadogのRole設定について説明します。
Role設定にすることでDatadog上にアクセスキー、シークレットキーを配置する必要がなくなり、セキュアになります。
ポリシーの作成
はじめにIAMの画面からポリシーを作成します。ポリシーは以下となります。
仮にDatadog_Integrationという名前とします。
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "autoscaling:Describe*", "cloudtrail:DescribeTrails", "cloudtrail:GetTrailStatus", "cloudwatch:Describe*", "cloudwatch:Get*", "cloudwatch:List*", "dynamodb:list*", "dynamodb:describe*", "ec2:Describe*", "ec2:Get*", "ecs:Describe*", "ecs:List*", "elasticache:Describe*", "elasticache:List*", "elasticloadbalancing:Describe*", "elasticmapreduce:List*", "elasticmapreduce:Describe*", "iam:Get*", "iam:List*", "kinesis:List*", "kinesis:Describe*", "logs:Get*", "logs:Describe*", "logs:TestMetricFilter", "rds:Describe*", "rds:List*", "route53:List*", "ses:Get*", "sns:List*", "sns:Publish", "sqs:GetQueueAttributes", "sqs:ListQueues", "sqs:ReceiveMessage", "support:*" ], "Effect": "Allow", "Resource": "*" } ] }
IAMロールの作成
IAM画面にてIAMロールの作成を選択します。
仮に”Datadog_Integration”を入力し、次のステップをクリックします。
ロール名はあとで使うので覚えておいてください。
「クロスアカウントアクセスのロール」をクリックし、「サードパーティのAWS…」を選択します。
DatadogのAWSアカウントにアクセス許可を与えるということになります。
アカウントIDはDatadogのアカウントID 464622532012 を入力します。
外部IDは、Datadogの設定画面で取得する必要があります。
別のブラウザ画面を用意し、以下のURLにアクセスします。
https://app.datadoghq.com/account/settings#integrations/amazon_web_services
Role Delegationを選択します(設定がない、新規に設定する場合は「add another acocunt」)をクリックしてください。
AWS External ID: をメモします。
画面はとじないで、さきほどのIAM Role設定の画面にもどり外部IDに入力します。
次のステップをクリックします。
ポリシーのアタッチ画面になります。最初のステップでつくったDatadog_Integrationをアタッチします。
ロールが作成されたら、Datadogの画面にもどます。
ロール名を設定します。入力がただしく出来ると上の部分が緑になります。緑になったら、忘れずに画面下にある「Update Configuration」ボタンをクリックしてください。おさないと設定が保存されません。
以上で設定は完了です。