DEA-C01 Data Store Management Practice Question
A data engineer is setting up Amazon S3 event notifications to trigger an AWS Lambda function when new objects are uploaded. Which TWO actions are required to enable this?
⚠ Common exam trap
It's easy for candidates to think an S3 bucket policy is needed to allow S3 to invoke Lambda, but in reality, the permission must be granted on the Lambda function's resource-based policy, not on the bucket.
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 a resource-based policy to the Lambda function to allow S3 to invoke it.
Lambda functions use a resource-based policy (also known as a function policy) to grant permissions to other AWS services, such as S3, to invoke the function. Without this policy, S3 will receive an access denied error when trying to trigger the Lambda function. Option D is correct because you must configure an S3 event notification on the bucket for the `s3:ObjectCreated:*` event type to instruct S3 to send a notification to the Lambda function when new objects are uploaded.
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 a resource-based policy to the Lambda function to allow S3 to invoke it.
Why this is correct
S3 invokes Lambda through a resource-based policy, so the function must grant s3.amazonaws.com permission via AddPermission, scoped to the bucket's source ARN. This satisfies the stem's requirement that S3 be authorised to trigger the function, without which the notification configuration fails with an access error.
- ✗
Enable S3 versioning on the bucket.
Why it's wrong here
Versioning preserves and recovers object revisions; it neither creates nor authorises event notification delivery. Notifications require an S3 event configuration plus a resource-based Lambda permission. Versioning would be the right choice when the requirement is retaining overwritten or deleted object versions for recovery.
- ✗
Create an S3 bucket policy that grants S3 permission to invoke Lambda.
Why it's wrong here
S3 publishes notifications through its own notification configuration and needs a resource-based Lambda permission, not a bucket policy granting S3 invoke rights. It is tempting because bucket policies control S3 access, and such a policy would be correct for granting cross-account access to bucket objects.
- ✓
Configure an event notification on the S3 bucket for s3:ObjectCreated:* events.
Why this is correct
Configuring an s3:ObjectCreated:* notification on the bucket directly satisfies the requirement to trigger Lambda on new object uploads. S3 event notifications support Lambda as a destination, and the wildcard covers all creation methods (PUT, POST, multipart). This is one of the two required actions.
- ✗
Set up an Amazon CloudWatch Events rule to detect S3 uploads.
Why it's wrong here
CloudWatch Events (EventBridge) rules detect and route events but do not themselves enable S3 to publish notifications; the notification configuration on the bucket is what triggers Lambda. It is tempting because EventBridge is correct for scheduled or cross-service event routing, not direct S3 object-created notifications.
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,321 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.