DEA-C01 Data Store Management Practice Question
Exhibit
Refer to the exhibit.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::example-bucket/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "aws:kms"
}
}
}
]
}A data engineer reviews this IAM policy attached to an S3 bucket. What is the effect of this policy?
⚠ Common exam trap
The trap is that candidates may misread StringNotEquals as StringEquals, thinking the policy denies SSE-KMS encryption when it actually denies non-SSE-KMS.
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
✓
Allows PutObject only when the object is encrypted with SSE-KMS.
The IAM policy uses a Deny effect with a StringNotEquals condition on s3:x-amz-server-side-encryption for aws:kms. This means that if the encryption header is anything other than aws:kms (i.e., not SSE-KMS), the request is denied. The net effect is that PutObject is allowed only when the object IS encrypted with SSE-KMS.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Denies PutObject when encryption is not SSE-KMS.
Why it's wrong here
Incorrect. This policy denies requests when the encryption is not SSE-KMS, so it allows PutObject only when SSE-KMS is used. It does not deny PutObject when encryption is not SSE-KMS; rather, it denies when encryption is not SSE-KMS.
- ✗
Denies all PutObject requests.
Why it's wrong here
Incorrect. The policy does not deny all PutObject requests; it only denies those without SSE-KMS encryption.
- ✓
Allows PutObject only when the object is encrypted with SSE-KMS.
Why this is correct
Correct. The Deny with StringNotEquals on aws:kms denies PutObject requests that do not use SSE-KMS encryption, thus allowing only those with SSE-KMS.
- ✗
Allows PutObject only when the object is NOT encrypted with SSE-KMS.
Why it's wrong here
Incorrect. The policy denies non-SSE-KMS encryption, so it allows PutObject only when the object IS encrypted with SSE-KMS, not when it is NOT encrypted with SSE-KMS.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
Courseiva writes every DEA-C01 question from scratch — 1,711 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
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.