Courseiva
Data Store Management →hardMultiple Choice

DEA-C01 Data Store Management Practice Question

Exhibit

Refer to the exhibit.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::123456789012:role/DataLakeRole"
      },
      "Action": [
        "s3:GetObject",
        "s3:PutObject"
      ],
      "Resource": "arn:aws:s3:::my-data-lake/*"
    }
  ]
}

An IAM role 'DataLakeRole' has the above S3 bucket policy attached to an S3 bucket. The role is assumed by an AWS Glue job. The Glue job is failing with 'Access Denied' errors when trying to list objects in the bucket. Which action should be added to the policy to fix the issue?

⚠ Common exam trap

It's easy for candidates to confuse s3:ListBucket (which applies to the bucket itself) with s3:GetObject or s3:ListObjects (which are often misapplied to object ARNs), leading them to pick Option D or A, not realizing that listing requires the bucket-level permission and a bucket ARN, not an object ARN.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Add s3:ListBucket action for the bucket ARN (arn:aws:s3:::my-data-lake).

The Glue job is failing with 'Access Denied' when trying to list objects, which requires the s3:ListBucket permission on the bucket itself (not on objects). Option B correctly adds s3:ListBucket for the bucket ARN (arn:aws:s3:::my-data-lake), which grants permission to list the contents of the bucket. Without this action, even if other permissions exist, the ListObjectsV2 API call used by AWS Glue to enumerate objects will be denied.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Add s3:ListObjects action for the bucket ARN.

    Why it's wrong here

    s3:ListObjects is a valid IAM action, but it only covers the older ListObjects API. AWS Glue uses the ListObjectsV2 API, which requires the s3:ListBucket action. Additionally, the action must be applied to the bucket ARN, not the object ARN.

  • ✓

    Add s3:ListBucket action for the bucket ARN (arn:aws:s3:::my-data-lake).

    Why this is correct

    Adding `s3:ListBucket` on the bucket ARN (`arn:aws:s3:::my-data-lake`) satisfies the failing list operation, because bucket-level actions such as `ListBucket` are evaluated against the bucket resource itself, not the objects within it. Object ARNs (`arn:aws:s3:::my-data-lake/*`) only govern object-level actions like `GetObject`.

  • ✗

    Add s3:GetObjectVersion action for the object ARN.

    Why it's wrong here

    Listing objects requires s3:ListBucket on the bucket ARN, not an object-level action. GetObjectVersion retrieves a specific object version and is granted on object ARNs, so it cannot authorise ListObjects. It would be correct when versioned object retrieval is needed, but the Glue job's failure is a listing permission gap.

  • ✗

    Add s3:ListBucket action for the object ARN (arn:aws:s3:::my-data-lake/*).

    Why it's wrong here

    Granting `s3:ListBucket` on the object ARN `arn:aws:s3:::my-data-lake/*` cannot work: `ListBucket` operates on the bucket resource itself, so the object-level ARN never matches and Access Denied persists. It is tempting because the Glue job's error concerns listing objects, yet `s3:ListBucket` belongs on `arn:aws:s3:::my-data-lake`, while object ARNs suit `s3:GetObject`.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

About these practice questions

This DEA-C01 question is part of Courseiva's 1,321-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DEA-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DEA-C01 exam.