AWSコアサービスの詳細(VPC・IAM・EC2・S3・RDSなど)応用問題
あるIAMユーザーに対して、S3バケットへのフルアクセスを許可するIAMポリシーと、同じS3バケットへのすべてのアクセスを明示的に拒否するIAMポリシーの両方がアタッチされています。このユーザーがS3バケットにアクセスしようとした場合、どうなりますか?
A.許可ポリシーが優先され、S3バケットへのフルアクセスが許可される
✗ IAMの評価ロジックでは許可ポリシーより明示的な拒否が優先されます。フルアクセスは許可されません。
B.明示的な拒否(Deny)が許可(Allow)より優先されるため、アクセスは拒否される← 正解
✓ 正解です。IAMポリシーの評価では明示的なDenyが常に最優先されます。AllowとDenyが競合した場合は必ずDenyが勝ちます。
C.2つのポリシーが競合するため、IAMはエラーを返しアクセス可否を判定できない
✗ IAMはポリシーの競合をエラーとして扱わず、明確な優先順位ルール(Deny優先)に基づいて判定します。
D.後からアタッチされたポリシーが優先されるため、アタッチ順によって結果が変わる
✗ IAMポリシーの評価はアタッチ順に依存しません。明示的なDenyは常に他のすべてのAllowより優先されます。