Azure RBAC Design for Multi-Team Environments
Security
Security & Identity
Azure RBAC done poorly either over-provisions access (a security risk) or creates constant friction for engineering teams (an operational risk). This is the role assignment model I apply to enterprise Azure environments with multiple teams.
Key Patterns & Steps
- Principle of least privilege: start with no access, grant the minimum required scope — not the opposite
- Assignment scope: prefer resource group scope over subscription scope; avoid subscription Owner assignments except for platform admins
- Use built-in roles first: Contributor, Reader, Storage Blob Data Contributor — only create custom roles when built-ins genuinely do not fit
- Service principals and managed identities for applications — no human credentials embedded in application config
- Privileged Identity Management (PIM): require just-in-time elevation for high-privilege roles; all elevations logged and time-limited
- Regular access reviews: quarterly review of all assignments; remove access within 24 hours of offboarding
Lessons Learned
The incident that triggered an RBAC overhaul was a departed contractor whose subscription Contributor access had never been revoked. Automate offboarding to Azure AD group removal — do not rely on a manual ticket process.
Technologies
Azure RBACPIMSecurityIAMAzure ADLeast PrivilegeAccess Control
← Back to Architecture Notes