Q2 — AWS SAA-C03 第9章
第 2/40 問 | ← 第9章
Q562. あるグループが Amazon S3 バケットの一覧表示およびそのバケット内のオブジェクトの削除を行うためのアクセス許可を必要としています。管理者は、このバケットへのアクセスを提供する以下の IAM ポリシーを作成し、そのポリシーをグループにアタッチしました。しかし、そのグループはバケット内のオブジェクトを削除できません。当社では最小権限の原則(least-privilege access)が適用されています。
- A. S3 バケットのバージョニングが有効になっているため、DeleteObject アクションではなく DeleteObjectVersion アクションが必要です。
- B. ポリシーに s3:ListBucket アクションが含まれているが、s3:DeleteObject アクションが不足しています。
- C. ポリシーで s3:DeleteObject アクションが指定されていますが、Resource フィールドにバケット ARN ではなくオブジェクト ARN(例:arn:aws:s3:::bucket-name/*)が指定されている可能性があります。
- D. ポリシーに s3:DeleteObject アクションが含まれていますが、s3:ListBucket アクションの Resource にバケット ARN(例:arn:aws:s3:::bucket-name)が正しく指定されていないか、s3:DeleteObject アクションの Resource にオブジェクトプレフィックス(例:arn:aws:s3:::bucket-name/*)が正しく指定されていません。 ✓
正解: D. ポリシーに s3:DeleteObject アクションが含まれていますが、s3:ListBucket アクションの Resource にバケット ARN(例:arn:aws:s3:::bucket-name)が正しく指定されていないか、s3:DeleteObject アクションの Resource にオブジェクトプレフィックス(例:arn:aws:s3:::bucket-name/*)が正しく指定されていません。
解説
Amazon S3 における IAM ポリシーでは、s3:ListBucket アクションの Resource にはバケット ARN(arn:aws:s3:::bucket-name)のみを指定でき、オブジェクトキーを含めることはできません。一方、s3:DeleteObject アクションの Resource には、オブジェクトを表す ARN(arn:aws:s3:::bucket-name/* など)を指定する必要があります。したがって、両アクションで正しいリソース ARN を指定していないと、アクセスが拒否されます。また、最小権限の原則に従うためには、各アクションに対応する正確なリソース範囲を明示的に指定する必要があります。