インスタンスの開始(StartInstances)
・[IAM Admini][KMS policy none] -> OK
・[IAM 「KMS Power」][KMS none] -> NG
・[IAM 「KMS Power」][KMS 「キーユーザー」] -> OK
・[IAM none][KMS 「キーユーザー」] -> OK
・[IAM CreateGrantだけ][KMS none] -> OK
そもそもの前提として、今回実験で使用したCMKはデフォルトで画面で作ったまま、ユーザ周りの設定しか変えていない。そのようなCMKでは、
https://docs.aws.amazon.com/ja_jp/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {"AWS": "arn:aws:iam::111122223333:root"},
"Action": "kms:*",
"Resource": "*"
}
のようなキーポリシー(KMS上概念、not IAM概念)が含まれている。これはどういう意味かというと、
「IAMポリシー側で、CreateGrantなど各権限がついていたら、その権限についてはKMSでも許可します」という意味だと思われる。