自分のAccess keyとSecret keyを操作できるようにするIAMポリシーの設定
例えば、外部の開発会社にAWSアカウントを渡す際に、Access keyとSecret keyは彼ら自身で管理できるようにしたいケースなんかありますよね。
PoweruserポリシーでもIAM系のアクションはnot allowになっているので個別で許可する必要があります。
Resourceの書き方とかすぐ忘れるし、今後何回か使いそうなのでメモ。
ポリシー名はなんでもよいが、ManageYourOwnAccesskey
など。
[your account number]
の部分を自分のアカウント番号に置き換えてください。
アカウント番号の確認方法は、コンソール右上のSupport->Support Center。参考リンク
${aws:username}
とすることで自分のアクセスキーだけを変更できるようになってます。
iam:ListUsers
Actionを追加しているのは、ユーザーのリストを表示しないとアクセスキー変更の操作を行えないから。
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:*AccessKey*" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::[your account number]:user/${aws:username}" ] }, { "Action": [ "iam:ListUsers" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::[your account number]:user/" ] } ] }
ついでに各ユーザーにパスワード変更を許可するポリシー。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1450162323000", "Effect": "Allow", "Action": [ "iam:ChangePassword" ], "Resource": [ "*" ] } ] }