LoginSignup
0
0

【terraform】rds performance insight参照権限をつくってみた

Posted at

概要

terraformを用いて特定のDBインスタンスのRDSのパフォーマンスインサイトのみを参照するIAMポリシーを作成することがあったので、その備忘録として記録します。

作ったもの

  • iam_policy.tf
  • outputs.tf

作り方

  1. iam_policy.tfをつくる
## iam_policy.tf
resource "aws_iam_policy" "testRDSPerformanceInsight" {
  name   = "testRDSPerformanceInsight"
  path   = "/"
  policy = <<POLICY
{
  "Statement": [
    {
      "Action": [
        "rds:DescribeDBInstances",
        "rds:DescribeDBClusters"
      ],
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Action": "pi:*",
      "Effect": "Allow",
      "Resource": "arn:aws:pi:ap-northeast-1:AWSアカウントID:metrics/rds/dbのリソースID"
    }
  ],
  "Version": "2012-10-17"
}
POLICY
}
  1. outputs.tfをつくる
## outputs.tf
output "aws_iam_policy" {
  value = {
    testRDSPerformanceInsight    = aws_iam_policy.testRDSPerformanceInsight
  }
}

  1. terraform planを実行する
  2. terraform applyを実行する

備忘録

  • iam_policy内でrds:DescribeDBInstancesrds:DescribeDBClustersに関してはResource指定で*を指定しないと、パフォーマンスインサイトはおろか、DB一覧自体も参照できなかったので、その2つは*にすることが必須条件っぽい
  • pi:*に関することに対して、対象の参照したいDBを指定することで、コンソール上から特定のRDSのパフォーマンスインサイトが参照できるようになった
  • DB指定をする際、DBのリソースIDを指定する必要があるので、DBがまだ作成されていない場合は先に作成する必要があるかもしれない(推測)

参考文献

最後までお読みいただき、ありがとうございました!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0