- A
Rely on an AWS-managed policy attached to the developer’s IAM user; permission boundaries only apply to users.
Why wrong: Permission boundaries apply to roles and users, but relying on an attached AWS-managed policy does not enforce the boundary limit. Also, the issue is that boundaries are not being applied or enforced correctly, not missing general policy attachments.
- B
Ensure the role creation process sets the permission boundary on the new role, using the boundary’s ARN in the CreateRole call or role template.
Permission boundaries are evaluated based on the boundary attached to the principal/role being created or used. If a developer creates roles without specifying the boundary, the boundary won’t restrict the resulting permissions. Enforcing boundary attachment via role templates or required parameters ensures every created role is constrained.
- C
Attach the permission boundary policy as an SCP in AWS Organizations so it automatically applies to all roles.
Why wrong: SCPs work at the organization level and can restrict maximum permissions, but they are not the same mechanism as permission boundaries. The scenario explicitly mentions permission boundaries and that they do not appear to restrict roles, so the fix should ensure boundary attachment on the created IAM identity.
- D
Grant the developer IAM permissions to add a “deny” statement to the boundary policy so the boundary blocks escalation.
Why wrong: A permission boundary does not get modified by granting the creator special permissions arbitrarily. The primary issue is likely that the boundary is not associated with the created role, so escalation is not constrained. Allowing boundary edits would often weaken security.
Quick Answer
The correct answer is to ensure the permission boundary’s ARN is explicitly applied to the role during its creation via the CreateRole API call or an infrastructure-as-code template. This is because an IAM permission boundary does not automatically attach to roles; it only restricts the maximum permissions a role can have if it is explicitly set on that role at creation time. Without this explicit application, a developer can create a role with broad permissions that completely bypasses the intended boundary, which is exactly the scenario described in the search intent. On the SAA-C03 exam, this concept tests your understanding that permission boundaries are not inherited or automatically enforced—they must be manually assigned to each role or user. A common trap is assuming that simply defining a boundary policy in the account will restrict all role creation. Memory tip: think of a permission boundary as a “fence” that must be built around each new role individually; if you don’t install the fence during construction, the role has no limits.
SAA-C03 Design Secure Architectures Practice Question
This SAA-C03 practice question tests your understanding of design secure architectures. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
A company uses IAM permission boundaries to prevent developers from escalating privileges. The security team created a permission boundary that allows only read-only actions on most AWS services, but teams can still manage their own resources. A developer can create an IAM role with broad permissions, and the boundary does not appear to be restricting it. Which corrective action best aligns with how permission boundaries work?
Clue words in this question
Noticing these words before you look at the options changes how you read each choice.
Clue:
"best"Why it matters: Signals that multiple options may be partially correct. Choose the option that most directly solves the exact problem described, not the one that sounds most complete.
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
Ensure the role creation process sets the permission boundary on the new role, using the boundary’s ARN in the CreateRole call or role template.
Permission boundaries must be explicitly applied to a role during its creation (via the `CreateRole` API call or an infrastructure-as-code template). Without setting the boundary ARN, the role inherits no restriction, allowing the developer to create a role with broad permissions that bypasses the intended boundary. Option B correctly identifies that the role creation process must include the boundary ARN to enforce the limitation.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Rely on an AWS-managed policy attached to the developer’s IAM user; permission boundaries only apply to users.
Why it's wrong here
Permission boundaries apply to roles and users, but relying on an attached AWS-managed policy does not enforce the boundary limit. Also, the issue is that boundaries are not being applied or enforced correctly, not missing general policy attachments.
- ✓
Ensure the role creation process sets the permission boundary on the new role, using the boundary’s ARN in the CreateRole call or role template.
Why this is correct
Permission boundaries are evaluated based on the boundary attached to the principal/role being created or used. If a developer creates roles without specifying the boundary, the boundary won’t restrict the resulting permissions. Enforcing boundary attachment via role templates or required parameters ensures every created role is constrained.
Clue confirmation
The clue word "best" in the question point toward this answer.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Attach the permission boundary policy as an SCP in AWS Organizations so it automatically applies to all roles.
Why it's wrong here
SCPs work at the organization level and can restrict maximum permissions, but they are not the same mechanism as permission boundaries. The scenario explicitly mentions permission boundaries and that they do not appear to restrict roles, so the fix should ensure boundary attachment on the created IAM identity.
- ✗
Grant the developer IAM permissions to add a “deny” statement to the boundary policy so the boundary blocks escalation.
Why it's wrong here
A permission boundary does not get modified by granting the creator special permissions arbitrarily. The primary issue is likely that the boundary is not associated with the created role, so escalation is not constrained. Allowing boundary edits would often weaken security.
Common exam traps
Common exam trap: answer the scenario, not the keyword
The trap here is that candidates assume permission boundaries are automatically inherited or enforced by default, when in fact they must be explicitly applied to each role during creation, and SCPs are often confused as a substitute for permission boundaries.
Trap categories for this question
Scenario analysis trap
SCPs work at the organization level and can restrict maximum permissions, but they are not the same mechanism as permission boundaries. The scenario explicitly mentions permission boundaries and that they do not appear to restrict roles, so the fix should ensure boundary attachment on the created IAM identity.
Detailed technical explanation
How to think about this question
When a role is created without a permission boundary, the effective permissions are the intersection of the role's trust policy and its attached identity-based policies, with no upper cap. A permission boundary sets a maximum permission limit that the role cannot exceed, regardless of the attached policies. In practice, if a developer has `iam:CreateRole` but not `iam:PassRole` with a boundary ARN, they can create a role with `AdministratorAccess` and then assume it, escalating privileges—this is why the boundary must be explicitly passed as a parameter in the `CreateRole` call.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
TExam Day Tips
- Watch for words such as best, first, most likely and least administrative effort.
- Review why wrong options are wrong, not only why the correct option is correct.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A company's IT admin needs to give a contractor read-only access to production logs without sharing account credentials. Using role-based access control (RBAC) and temporary scoped permissions — not a permanent shared password — is the correct pattern. Questions like this test whether you can apply least-privilege access across cloud identity services.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
- →
Design Secure Architectures — study guide chapter
Learn the concepts, then practise the questions
- →
Design Secure Architectures practice questions
Targeted practice on this topic area only
- →
All SAA-C03 questions
1,040 questions across all exam domains
- →
SAA-C03 study guide
Full concept coverage aligned to exam objectives
- →
SAA-C03 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related SAA-C03 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Design Secure Architectures practice questions
Practise SAA-C03 questions linked to Design Secure Architectures.
Design Resilient Architectures practice questions
Practise SAA-C03 questions linked to Design Resilient Architectures.
Design High-Performing Architectures practice questions
Practise SAA-C03 questions linked to Design High-Performing Architectures.
Design Cost-Optimized Architectures practice questions
Practise SAA-C03 questions linked to Design Cost-Optimized Architectures.
SAA-C03 VPC practice questions
Practise SAA-C03 questions linked to SAA-C03 VPC.
SAA-C03 S3 lifecycle policy questions
Practise SAA-C03 questions linked to SAA-C03 S3 lifecycle policy questions.
SAA-C03 RDS Multi-AZ questions
Practise SAA-C03 questions linked to SAA-C03 RDS Multi-AZ questions.
SAA-C03 IAM policy practice questions
Practise SAA-C03 questions linked to SAA-C03 IAM policy.
SAA-C03 Route 53 failover questions
Practise SAA-C03 questions linked to SAA-C03 Route 53 failover questions.
SAA-C03 CloudFront practice questions
Practise SAA-C03 questions linked to SAA-C03 CloudFront.
SAA-C03 NAT gateway questions
Practise SAA-C03 questions linked to SAA-C03 NAT gateway questions.
SAA-C03 VPC endpoint questions
Practise SAA-C03 questions linked to SAA-C03 VPC endpoint questions.
Practice this exam
Start a free SAA-C03 practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this SAA-C03 question test?
Design Secure Architectures — This question tests Design Secure Architectures — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Ensure the role creation process sets the permission boundary on the new role, using the boundary’s ARN in the CreateRole call or role template. — Permission boundaries must be explicitly applied to a role during its creation (via the `CreateRole` API call or an infrastructure-as-code template). Without setting the boundary ARN, the role inherits no restriction, allowing the developer to create a role with broad permissions that bypasses the intended boundary. Option B correctly identifies that the role creation process must include the boundary ARN to enforce the limitation.
What should I do if I get this SAA-C03 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
Are there clue words in this question I should notice?
Yes — watch for: "best". Signals that multiple options may be partially correct. Choose the option that most directly solves the exact problem described, not the one that sounds most complete.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
2 more ways this is tested on SAA-C03
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 company uses IAM permission boundaries to prevent developers from escalating privileges. The security team created a permission boundary that allows only read-only actions on most AWS services, but teams can still manage their own resources. A developer can create an IAM role with broad permissions, and the boundary does not appear to be restricting it. Which corrective action best aligns with how permission boundaries work?
medium- A.Rely on an AWS-managed policy attached to the developer’s IAM user; permission boundaries only apply to users.
- ✓ B.Ensure the role creation process sets the permission boundary on the new role, using the boundary’s ARN in the CreateRole call or role template.
- C.Attach the permission boundary policy as an SCP in AWS Organizations so it automatically applies to all roles.
- D.Grant the developer IAM permissions to add a “deny” statement to the boundary policy so the boundary blocks escalation.
Why B: Permission boundaries must be explicitly set on a role during its creation (via the `CreateRole` API call or an infrastructure-as-code template). Without specifying the boundary ARN in the role creation request, the role inherits no boundary, allowing the developer to attach broad permissions that exceed the intended restriction. Option B correctly identifies that the developer’s role creation process must include the boundary ARN to enforce the limitation.
Variation 2. Your organization uses IAM permission boundaries to prevent engineers from escalating privileges. An automated pipeline creates an IAM role for an application deployment and attaches a permission boundary. After deployment, the pipeline reports that the role could create a new KMS key. The permission boundary policy attached to the role allows only (for a specific KMS key ARN, prod-key): - kms:Decrypt - kms:DescribeKey There is no Allow statement for: - iam:CreateKey - kms:CreateKey What is the most likely reason the role was still able to create a KMS key?
medium- ✓ A.The permission boundary was not actually attached to the role at creation time (for example, the pipeline bug attached a different boundary ARN or the attachment step failed).
- B.Permission boundaries automatically grant all KMS permissions needed by applications, even when they are not listed in the boundary.
- C.Because the boundary allows kms:DescribeKey for prod-key, kms:CreateKey must also be implicitly allowed.
- D.SCPs always override permission boundaries, so the boundary is ignored in Organizations.
Why A: The most likely reason is that the permission boundary was not actually attached to the role at creation time. Permission boundaries define the maximum permissions a role can have; if the boundary is missing or not attached, the role inherits the full permissions of its attached IAM policies. Since the boundary explicitly denies kms:CreateKey, the only way the role could create a KMS key is if the boundary was not enforced, pointing to a pipeline bug or attachment failure.
Keep practising
More SAA-C03 practice questions
- A content publishing system uses Lambda functions that call an unreliable third-party API. Failed events must be retaine…
- A startup runs two EC2-based workloads in the same AWS Region. Its customer-facing API is always on, and its nightly vid…
- A warehouse integration service must use shared file storage across Linux EC2 instances in multiple Availability Zones.…
- A team runs a stateless web app on Amazon EC2 behind an Application Load Balancer. During traffic spikes, new EC2 instan…
- A service in private subnets downloads product images from Amazon S3 and stores job state in DynamoDB. A NAT Gateway is…
- A static site is hosted in Amazon S3 and delivered by CloudFront. After a frontend release, the same JavaScript bundles…
Last reviewed: Jun 11, 2026
This SAA-C03 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 SAA-C03 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.