Courseiva
Data Store ManagementmediumMultiple ChoiceObjective-mapped

DEA-C01 IAM Policy Conditions Practice Question

Exhibit

Refer to the exhibit.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::example-bucket/*",
      "Condition": {
        "StringEquals": {
          "s3:x-amz-server-side-encryption": "AES256"
        }
      }
    }
  ]
}

A data engineer applies the following IAM policy to an IAM user:

```json

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::example-bucket/*",
      "Condition": {
        "StringEquals": {

"s3:x-amz-server-side-encryption": "AES256"

}
      }
    }
  ]
}

```

The user attempts to download an object from the bucket 'example-bucket' that is encrypted with SSE-S3 (AES256). Will the request succeed?

⚠ Common exam trap

The trap is that candidates assume SSE-S3 is transparent and always allows access, overlooking that the IAM policy condition explicitly requires the encryption header in the request. The condition applies to the request, not the object's encryption-at-rest.

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

No, because the policy requires the encryption to be specified in the request.

The IAM policy includes a condition that requires the request to include the `x-amz-server-side-encryption` header with value `AES256`. Even though the object is encrypted with SSE-S3, the policy condition evaluates the request headers, not the object's encryption state. Since the user does not specify the encryption header in the download request, the condition fails, and the request is 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.

  • Yes, but only if the user also has s3:ListBucket permission.

    Why it's wrong here

    Incorrect. The `s3:ListBucket` permission is not required for `s3:GetObject`. The request fails due to the encryption header condition, not missing ListBucket.

  • No, because the policy requires the encryption to be specified in the request.

    Why this is correct

    Correct. The policy has a condition requiring the encryption header to be specified in the request. Since the user does not include it, the request is denied.

  • Yes, because the object is encrypted with SSE-S3 which uses AES256.

    Why it's wrong here

    Incorrect. Although the object is encrypted with SSE-S3, the policy condition evaluates the request headers, not the object's encryption. The request still fails because the header is missing.

  • No, because the policy does not allow the s3:GetObject action for encrypted objects.

    Why it's wrong here

    Incorrect. The policy does allow `s3:GetObject` for encrypted objects, but only if the request includes the encryption header. The user fails to meet that condition.

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,711-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

Same concept, more angles

1 more way this is tested on DEA-C01

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A data engineer attaches the above IAM policy to an IAM user. The user tries to download an object from my-bucket using the AWS CLI without specifying SSE headers. The object is stored with SSE-S3. Will the download succeed?

hard
  • A.No, because the object is encrypted and the user does not have decrypt permission.
  • B.No, because the request does not include the required encryption header.
  • C.Yes, because the object is encrypted with SSE-S3, which uses AES256.
  • D.Yes, because the policy allows s3:GetObject on the bucket.

Why D: For SSE-S3 objects, no additional encryption headers are required on GET requests because S3 handles decryption transparently for authorized users. The IAM policy grants s3:GetObject, so the download succeeds.

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.