Azure Governance and RBAC

Two systems are easy to confuse and both appear in the same questions. RBAC controls who may do something. Policy controls what may exist. A question that says a compliant user cannot create a resource is usually a policy question.

Built-in roles

RoleWhat it allows
OwnerEverything, including granting access to others
ContributorEverything except granting access
ReaderView only
User Access AdministratorManage access, nothing else
Virtual Machine ContributorManage VMs, not the VNet or storage they use
Storage Blob Data ContributorRead and write blob data. A data plane role
Network ContributorManage networking resources
Security Reader / AdminView or manage security settings

Scope and inheritance

LevelDetail
Management groupTop. Groups subscriptions, inherits downward
SubscriptionInherits from management group
Resource groupInherits from subscription
ResourceInherits from resource group
RuleAssignments are additive down the tree
Deny assignmentOverrides an allow. Created by Azure, not by hand
Maximum assignmentsLimited per subscription. Use groups, not individual users

RBAC against Policy

QuestionRBACAzure Policy
What does it controlWho may perform an actionWhat configuration is permitted
Typical failurePermission denied on a requestResource creation blocked by a policy
Effects availableAllow only, plus deny assignmentsDeny, Audit, Append, Modify, DeployIfNotExists
ExampleGrant Contributor on one resource groupRequire a tag, or block a region

Locks and cost controls

FeatureWhat it does
CanNotDelete lockRead and modify permitted, delete blocked
ReadOnly lockRead permitted, everything else blocked
Lock inheritanceApplies to everything below the scope it is set at
Lock precedenceThe most restrictive lock in the chain wins
TagsKey and value pairs for cost allocation and automation
BudgetsAlerts at a spending threshold. Does not stop spend
Resource graphQuery resources across subscriptions at speed

Now test yourself

Memorizing a table is a start. Practice questions are what make it stick, and every answer carries the full explanation.