MLS-C01 Data Engineering Practice Question
Exhibit
Refer to the exhibit.
```
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::my-data-lake/*"
},
{
"Effect": "Allow",
"Action": [
"glue:StartJobRun",
"glue:GetJobRun"
],
"Resource": "arn:aws:glue:us-east-1:123456789012:job/my-etl-job"
}
]
}
```A data engineer uses the IAM policy above for an AWS Lambda function that processes data in S3 and triggers an AWS Glue job. The Lambda function is unable to start the Glue job. What is the most likely cause?
⚠ Common exam trap
The trap here is that candidates focus on S3 permissions (options B and D) because the Lambda processes S3 data, but the actual failure is the missing IAM permission required to delegate a role to AWS Glue, which is a subtle but critical detail in cross-service orchestration.
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
✓
The policy does not include iam:PassRole permission.
The Lambda function needs to pass an IAM role to AWS Glue when starting a job, which requires the `iam:PassRole` permission. Without this permission, the `StartJobRun` API call fails even if the Lambda has permissions to invoke Glue. The policy shown lacks this critical permission, making option C the correct answer.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The Glue job name in the resource ARN is misspelled.
Why it's wrong here
The exhibit does not indicate misspelling.
- ✗
The policy does not allow s3:PutObject on the bucket.
Why it's wrong here
The policy includes s3:PutObject.
- ✓
The policy does not include iam:PassRole permission.
Why this is correct
To start a Glue job, Lambda must pass an execution role; iam:PassRole is required.
- ✗
The policy does not include s3:GetObject on the bucket.
Why it's wrong here
The policy includes s3:GetObject on the bucket.
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
One of 1,672 original MLS-C01 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This MLS-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 MLS-C01 exam.