DVA-C02セキュリティMEDIUM単一選択

ある開発者は IAM ポリシーのデバッグをしています。対象ユーザーには以下の 2 つのポリシーがアタッチされています。④「s3:GetObject を全バケットに Allow」②「s3:GetObject を arn:aws:s3:::sensitive-bucket/* に Deny」このユーザーが sensitive-bucket のオブジェクトを GetObject しようとするとどうなりますか?

  1. A. リソースベースのポリシーがなければ暗黙的な Deny になるため拒否される
  2. B. Deny が Allow よりも常に優先されるためアクセスは拒否される
  3. C. 後からアタッチしたポリシーが優先されるため、アタッチの順序による
  4. D. Allow ポリシーが優先されるため GetObject は成功する
解答と解説を見る

正解: B

AWS IAM のポリシー評価ロジックでは「明示的な Deny は全ての Allow より優先」されます。たとえ別のポリシーで Allow されていても、明示的な Deny が存在すれば必ずアクセスは拒否されます。この原則は「Deny override」と呼ばれます。D は誤りで、Allow が Deny に勝つことはありません。C も誤りで、ポリシーにアタッチ順序による優先度はありません。A は「暗黙的な Deny」についての説明ですが、この問題では明示的な Deny が存在するためその議論以前に拒否されます。

▸ この試験を本気で演習する(全150問・無料)