Azure RBAC Built-in Roles Reference

Common Azure built-in role names with scope levels and permission summary.

Searchable Azure RBAC built-in role reference covering Owner, Contributor, Reader and service-specific roles for Storage, Key Vault, VMs and AKS with scope and assignment notes.

What is the difference between Owner, Contributor and Reader?

Owner has full access including managing other users' access (role assignments). Contributor can create and manage all resource types but cannot grant access to others. Reader can only view resources. All three are management-plane roles and do not by themselves grant data-plane access like reading blob contents.

Azure RBAC built-in roles

Azure role-based access control grants access by assigning a role definition to a security principal at a scope. Built-in roles are Microsoft-maintained definitions covering generic management (Owner, Contributor, Reader) and service-specific data access. This reference lists the most common ones with their scope and whether they act on the management or data plane.

How it works

An assignment binds a role to a principal at a scope; permissions inherit from broader scopes downward:

az role assignment create \
  --assignee [email protected] \
  --role "Storage Blob Data Reader" \
  --scope "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Storage/storageAccounts/<acct>"

Azure separates two planes:

  • Management plane roles (Owner, Contributor, Reader) manage the resource object — create, configure, delete.
  • Data plane roles (Storage Blob Data Contributor, Key Vault Secrets User) read or write the contents inside the resource.

A Contributor can deploy a storage account but cannot read its blobs without a data-plane role. Scopes are management group → subscription → resource group → resource, inheriting downward.

Tips and notes

  • Owner and User Access Administrator can grant access; Contributor cannot.
  • Always assign at the narrowest scope (single resource or resource group), not the whole subscription.
  • For storage and Key Vault, pick the explicit Data roles — generic Contributor does not grant data access.
  • Inspect a role’s exact actions with az role definition list --name "<role>".