AZ-104 Manage Azure Identities and Governance Practice Question
A subscription already grants Contributor to an application team. The organization wants to prevent deployments in unsupported Azure regions and ensure every new resource has an Environment tag. Which two controls should be implemented with Azure Policy rather than RBAC? Select two.
⚠ Common exam trap
Candidates often confuse RBAC (identity-based permissions) with Azure Policy (resource property enforcement), mistakenly thinking a custom RBAC role can restrict regions or tags, when in fact RBAC only controls actions like 'write' or 'delete' and cannot evaluate resource properties like location or tags.
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
✓
Assign an allowed-locations policy at the management group or subscription scope.
Azure Policy can enforce an 'allowed-locations' policy at the management group or subscription scope to restrict resource deployment to only approved Azure regions. This is a governance control that operates declaratively, evaluating resource properties against policy rules before or after creation, unlike RBAC which controls identity-based permissions. Option C is correct because Azure Policy can enforce the 'Environment' tag on new resources using a 'require a tag and its value' policy, ensuring compliance without modifying role assignments.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Assign an allowed-locations policy at the management group or subscription scope.
Why this is correct
An allowed-locations policy assignment at the management group or subscription scope is correct because Azure Policy evaluates the location property of each resource during deployment and can deny any request that specifies a non-approved region. Policy inheritance means the restriction applies to all child subscriptions and resource groups without requiring additional assignments, and it does not depend on the contributor role assignment the team already has. Because the team is a Contributor, they can create resources anywhere within the subscription; only a policy can intercept and block that action based on the region.
- ✗
Create a custom RBAC role that blocks resources deployed outside approved regions.
Why it's wrong here
A custom RBAC role that attempts to block resources outside approved regions cannot work because RBAC permissions are based on actions (such as Microsoft.Resources/deployments/write) and do not inspect resource properties like location during evaluation. Even with deny assignments or custom roles, you cannot express a condition that says 'this deployment is allowed only if the region is X' purely through role-based permissions. Azure Policy is the service that performs property-based evaluation and is the appropriate mechanism for this requirement.
When this WOULD be correct
A question where the organization wants to restrict deployment actions for a specific team (e.g., deny create/update operations on resources outside approved regions) and the solution must use role-based access control, not policy. For example: 'You need to prevent a specific user group from deploying resources in unapproved regions using a custom role.'
- ✓
Assign a policy that enforces the Environment tag on new resources.
Why this is correct
Assigning a policy that enforces the Environment tag on new resources (using effects such as deny, append, or modify) is a correct governance action because tags are metadata stored on the resource itself and are fully inspectable by Azure Policy. For example, a policy with the deny effect can reject deployments that omit the tag, while the append or modify effect can automatically add the tag after creation. This works independently of RBAC, so even users with Contributor rights cannot bypass the tagging requirement.
- ✗
Add a CanNotDelete lock to every resource group.
Why it's wrong here
Adding a CanNotDelete lock to every resource group is wrong here because locks are designed to prevent accidental deletion or modification of critical resources, not to enforce deployment-time compliance rules like allowed regions or required tags. A lock does not evaluate the properties of a newly deployed resource; it operates after the resource exists and cannot inspect the deployment request itself. Contributor users would still be able to create resources in any region, and the lock would not add the Environment tag or reject an unapproved location.
When this WOULD be correct
In a scenario where the organization wants to prevent accidental deletion of critical resources, such as production databases, a CanNotDelete lock should be applied at the resource group level to protect against deletion by users with Contributor permissions.
- ✗
Grant User Access Administrator to the deployment team.
Why it's wrong here
Granting User Access Administrator to the deployment team is incorrect because that role only manages Azure RBAC role assignments and does not enforce any governance or compliance requirements on resource deployments. It would give the team the ability to grant themselves or others additional permissions, making governance worse, but it would not restrict the region or validate tags. Since the team already has Contributor, they can create resources; adding User Access Administrator does nothing to constrain where or how they do it.
When this WOULD be correct
In a scenario where a team needs to manage role assignments for other users (e.g., delegate role administration) but should not have full access to resources, User Access Administrator would be correct.
Option-by-option analysis
Why each answer is right or wrong
Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The AZ-104 exam frequently reuses these exact scenarios with slightly different constraints.
✓Assign an allowed-locations policy at the management group or subscription scope.Correct answer▾
Why this is correct
An allowed-locations policy assignment at the management group or subscription scope is correct because Azure Policy evaluates the location property of each resource during deployment and can deny any request that specifies a non-approved region. Policy inheritance means the restriction applies to all child subscriptions and resource groups without requiring additional assignments, and it does not depend on the contributor role assignment the team already has. Because the team is a Contributor, they can create resources anywhere within the subscription; only a policy can intercept and block that action based on the region.
✗Create a custom RBAC role that blocks resources deployed outside approved regions.Wrong answer — click to see why▾
Why this is wrong here
Azure Policy, not RBAC, is the correct tool to enforce allowed locations. A custom RBAC role can deny deployment actions, but it cannot prevent resource creation by other services or at the subscription level, and it doesn't integrate with Azure Policy's compliance reporting.
★ When this WOULD be the correct answer
A question where the organization wants to restrict deployment actions for a specific team (e.g., deny create/update operations on resources outside approved regions) and the solution must use role-based access control, not policy. For example: 'You need to prevent a specific user group from deploying resources in unapproved regions using a custom role.'
Why candidates choose this
Candidates may think RBAC can enforce location restrictions because RBAC controls permissions, and a custom role can deny actions. They might overlook that Azure Policy is designed for such guardrails and provides broader enforcement and compliance features.
✗Add a CanNotDelete lock to every resource group.Wrong answer — click to see why▾
Why this is wrong here
CanNotDelete locks prevent resource deletion but do not restrict deployments to approved regions or enforce tagging, which are the specific requirements in the question.
★ When this WOULD be the correct answer
In a scenario where the organization wants to prevent accidental deletion of critical resources, such as production databases, a CanNotDelete lock should be applied at the resource group level to protect against deletion by users with Contributor permissions.
Why candidates choose this
Candidates may confuse resource locks with policy controls, thinking that locks can restrict deployments or enforce compliance, when locks only protect against deletion or modification.
✗Grant User Access Administrator to the deployment team.Wrong answer — click to see why▾
Why this is wrong here
Granting User Access Administrator allows the team to manage role assignments, which is not needed for preventing deployments in unsupported regions or enforcing tags; Azure Policy handles these controls declaratively without granting additional RBAC permissions.
★ When this WOULD be the correct answer
In a scenario where a team needs to manage role assignments for other users (e.g., delegate role administration) but should not have full access to resources, User Access Administrator would be correct.
Why candidates choose this
Candidates may think that controlling deployments requires administrative permissions, and User Access Administrator seems powerful enough to enforce restrictions, but they overlook that Azure Policy provides governance without granting elevated RBAC roles.
Analysis generated from the official AZ-104blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”
Quick reference
Access Control Model Comparison
| Model | Acronym | Who Controls Access? | Best For |
|---|---|---|---|
| Discretionary Access Control | DAC | Resource owner | Small teams, file shares |
| Mandatory Access Control | MAC | System / security labels | Classified govt / military |
| Role-Based Access Control | RBAC | Administrator (via roles) | Enterprise environments |
| Attribute-Based Access Control | ABAC | Policy engine (user + resource attributes) | Fine-grained, dynamic policies |
| Rule-Based Access Control | RuBAC | System rules / ACLs | Firewall rules, network ACLs |
Go deeper
Related to this question
Learn chapter
Privileged Identity Management (PIM)
Key term
Compliance
Compliance is the process of ensuring that an organization follows laws, regulations, standards, and internal policies that apply to its operations and data handling.
Key term
Subscription
A subscription is a payment model where you pay a recurring fee to access a product or service instead of buying it once and owning it forever.
About these practice questions
One of 1,049 original AZ-104 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 AZ-104 practice question is part of Courseiva's free Microsoft 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 AZ-104 exam.