DBS-C01 IAM Policy Evaluation Logic Practice Question
Exhibit
Refer to the exhibit.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem"
],
"Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/MyTable"
},
{
"Effect": "Deny",
"Action": "dynamodb:*",
"Resource": "*"
}
]
}A developer is troubleshooting an application that is unable to write to a DynamoDB table. The above IAM policy is attached to the IAM role used by the application. What is the likely cause?
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 Deny statement overrides the Allow statement, blocking all DynamoDB actions.
The Deny statement for all DynamoDB actions overrides the Allow for PutItem. Deny statements always take precedence over Allow statements. Option B is incorrect because the table name in the Resource ARN is correct. Option C is incorrect because the IAM user does exist. Option D is incorrect because the role is assumed correctly.
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 Deny statement overrides the Allow statement, blocking all DynamoDB actions.
Why this is correct
Correct. The Deny statement overrides the Allow, blocking all DynamoDB actions.
- ✗
The table name in the Resource ARN is incorrect.
Why it's wrong here
Incorrect. The table name in the Resource ARN is correctly specified.
- ✗
The IAM user does not exist.
Why it's wrong here
Incorrect. The IAM user exists; the policy is attached to the role, not the user.
- ✗
The role is not correctly assumed by the application.
Why it's wrong here
Incorrect. The role is assumed correctly by the application.
Go deeper
Related to this question
About these practice questions
This DBS-C01 question is part of Courseiva's 1,663-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 →
Same concept, more angles
1 more way this is tested on DBS-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. Refer to the exhibit. An IAM policy is attached to a user. The user reports that they cannot delete the production-db database. Which statement best explains the behavior?
hard- ✓ A.An explicit Deny statement prevents the deletion of the production-db instance
- B.The user needs additional permissions to delete any DB instance
- C.The user does not have permission to describe DB instances
- D.The user does not have permission to create a DB instance
Why A: The IAM policy includes an explicit Deny statement that specifically denies the DeleteDBInstance action on the production-db instance. In IAM, an explicit Deny overrides any Allow, so even if other statements allow DeleteDBInstance, this Deny prevents the deletion. Option B is incorrect because the policy does allow DeleteDBInstance on other resources, so the issue is not a lack of general permissions. Option C is incorrect because the policy includes Allow on DescribeDBInstances. Option D is incorrect because the policy does not restrict CreateDBInstance; the problem is specific to deletion of production-db.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DBS-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 DBS-C01 exam.