やりたいこと
- Systems Manager のパラメータストアを操作 (読み書き, 一覧取得) する為に必要な IAM ポリシーの一例
やったこと
以下のようなポリシーを書いた.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:DescribeParameters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:Get*", "ssm:PutParameter" ], "Resource": "arn:aws:ssm:*:*:parameter/*" }, { "Effect":"Allow", "Action":[ "kms:Decrypt" ], "Resource":[ "*" ] } ] }
もう少し絞れるかもしれないけど...
ハマったのは ssm:Get*
これ. 当初は GetParameter だけを付与していたら ssm:DescribeParameters
を与えているにも関わらず, パラメータの一覧を取得出来ない問題にぶち当たった. ちゃんとドキュメントを読むと Get
系は以下のように複数存在していることを確認, シンプルに一つのパラメータだけを取得したい場合には問題無いのかもしれないけど, 一度に複数のパラメータ, パラメータの更新履歴等を取得する場合には GetParameterHistory
等を付与する必要があるというのを理解した.
参考
以上
ドキュメントちゃんと読め案件でした.