AWS RDS CLI: CreateDBSnapshot でアクセス拒否

AWS RDS CLI: CreateDBSnapshot でアクセス拒否

私は使いたいAWS RDS コマンドラインツールデータベースのスナップショットを作成するにmy-databasecreate-db-snapshot

私は特別なバックアップロールを作成しました私はスナップショットを記述、コピー、作成できるポリシーを設定します。次のようになります (機密 ID は x に置き換えました)。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmtxxxxxxxxxxxxxx",
      "Effect": "Allow",
      "Action": [
        "rds:CopyDBSnapshot",
        "rds:CreateDBSnapshot",
        "rds:DescribeDBSnapshots",
        "rds:DescribeEventCategories",
        "rds:DescribeEvents"
      ],
      "Resource": [
        "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:db:my-database"
      ]
    }
  ]
}

CLIツールを設定した後、aws configureこのユーザーのキーを入力し、次のコマンドを実行してスナップショットを作成しようとしました。

aws rds create-db-snapshot \
    --db-snapshot-identifier "my-database-backup-$(date +%d-%m-%Y-%Hh%Mm)" \
    --db-instance-identifier "my-database"

その結果、次のようなエラー メッセージが表示されます。

CreateDBSnapshot 操作の呼び出し時にクライアント エラー (AccessDenied) が発生しました: ユーザー: arn:aws:iam::xxxxxxxxxxxxxx:user/automated-tasks には、リソース arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:snapshot:my-database-backup-24-11-2014-11h07m に対する rds:CreateDBSnapshot を実行する権限がありません

引数--db-snapshot-identifierではなく、引数に指定した名前のリソースへのアクセスが拒否されると表示されるので、これは奇妙だと思いました。--db-instance-identifier

そもそもインスタンスに適用されるスナップショットを作成するための十分な権限を持っている場合、そのスナップショットに対する作成権限も本質的に持っているべきではないでしょうか?

とにかく、ポリシー内のリソースを RDS 内のすべてのものに変更してみました。

"Resource": [
    "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:*"
]

これで私のロールにはアカウントの RDS ARN 内のすべてのスナップショット作成権限が付与されたので、これが機能することを期待していましたが、機能しませんでした。

私のコマンドがエラーを返す理由について、手がかりを持っている人はいますか?

答え1

確かに奇妙ですが、CreateDBSnapshot宛先スナップショットにも権限を割り当てる必要があるようです。

このポリシーは次のように機能します:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmtxxxxxxxxxxxxxx",
            "Effect": "Allow",
            "Action": [
                "rds:CreateDBSnapshot"
            ],
            "Resource": [
                "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:db:my-database",
                "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:snapshot:*"
            ]
        }
    ]
}

関連情報