最近、AWSでIAMポリシー制御をしたので、その時にハマったことについて書きたいと思います。
やったことは、EC2でのポリシー制御についてですが、ポリシーによって条件式(condition)での制御ができないポリシーがあることがわかりました。
リソースレベルでのアクセス許可されていることが前提のようです。
■リソースレベルがアクセスされているIAM API
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-supported-iam-actions-resources.html
IAMポリシー制御するにあたって、タグ情報で制御しようと思った場合は、conditionにタグで制御するように書けばできると思われがちですが、実際はそうではなくて、対応しているものが限られているということになります。
例えば、EC2ではインスタンス起動、削除といったことは、タグで制御できます。
しかし、インスタンスサイズの変更、EBSボリュームのディスクサイズの変更については、タグでの制御ができないので、注意が必要になります。
■EC2でのリソースレベルでのアクセスがサポートされていない一覧は以下
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/APIReference/ec2-api-permissions.html#ec2-api-unsupported-resource-permissions