Grants and exclusions
Azure RBAC combines applicable grants. NotActions removes operations from a role definition; it is not a global denial against permissions from another role. An applicable deny assignment is a different mechanism.
Access removal therefore requires inventorying direct assignments, groups and inheritance. Adding Reader does not restrict Contributor. After adjusting grants, confirm a required operation and one that must be denied.
Scope does not replace actions
A role combines operations with scope. Assigning VM Contributor at a management group permits descendant VM administration according to its definition, but does not make it universal hierarchy administration. When moving a subscription between management groups, compare ancestry, inherited Policies and RBAC.
Stable resource IDs do not demonstrate unchanged controls for creation, modification and recovery. Prepare the team receiving operational responsibility.
Identity performing the correction
Policy evaluation can identify noncompliance without correcting existing resources. Modify and deployIfNotExists use the assignment identity for remediation. SDK-created assignments need appropriate grants; permissions of the operator reading the report do not replace that identity’s permissions.
Changing roleDefinitionIds in the definition also does not prove automatic grant updates for existing identities. Review minimum actions and confirm the resource outcome.
Tags and change exercise
Group or subscription tags are not automatically copied to every resource. Define application, remediation and querying consistently with inventory. Because tags can appear in APIs and reports, do not store API keys in them.
In the exercise, a migration changes hierarchy and support team. Produce a list of inherited permissions, Policies that could block future requests, missing tags and expected remediation results. Do not approve the change merely because resource count stayed unchanged.
A task corrects eight resources and fails authorization on two. The team should correct the remediation identity and confirm those two outcomes, preserving evidence for the eight already corrected. Excluding the two from the report changes scope without resolving the request.
Common pitfalls
Avoid treating NotActions as global deny, operator permissions as runner permissions, and group tags as inherited resource tags.
Related topics: Storage replication, delegation and restoration · Templates, modules and intended state
Connect principal, action, scope and observed result before declaring the control effective.
References
- Azure RBAC evaluation · Microsoft Learn documentation consulted 2026-10-15
- Self-service password reset eligibility · Microsoft Learn documentation consulted 2026-10-15
- Group licensing, membership and assignment transitions · Microsoft Learn documentation consulted 2026-10-15
- B2B invitation redemption · Microsoft Learn documentation consulted 2026-10-15
- Resize a virtual machine · Microsoft Learn documentation consulted 2026-10-15
- Policy remediation authorization · Microsoft Learn documentation consulted 2026-10-15
- Management group hierarchy and access · Microsoft Learn documentation consulted 2026-10-15
- Resource tags and inheritance · Microsoft Learn documentation consulted 2026-10-15
- Block blob object replication · Microsoft Learn documentation consulted 2026-10-15
- Blob soft delete scopes and limitations · Microsoft Learn documentation consulted 2026-10-15
- Azure Files SMB share permissions and ACLs · Microsoft Learn documentation consulted 2026-10-15
- Shared access signatures and scoped delegation · Microsoft Learn documentation consulted 2026-10-15
- Deployment modes and resource state · Microsoft Learn documentation consulted 2026-10-15
- Bicep what-if and analysis limits · Microsoft Learn documentation consulted 2026-10-15
- Bicep modules and deployment identity · Microsoft Learn documentation consulted 2026-10-15
- Managed disk roles and performance limits · Microsoft Learn documentation consulted 2026-10-15
- Autoscale evaluation · Microsoft Learn documentation consulted 2026-10-15
- ACI restart policies · Microsoft Learn documentation consulted 2026-10-15
- Container Apps revision lifecycle · Microsoft Learn documentation consulted 2026-10-15
- App Service slot lifecycle · Microsoft Learn documentation consulted 2026-10-15
- App Service plan capacity · Microsoft Learn documentation consulted 2026-10-15
- App Service outbound integration · Microsoft Learn documentation consulted 2026-10-15
- KQL filtering and aggregation · Microsoft Learn documentation consulted 2026-10-15
- Azure diagnostic collection and destinations · Microsoft Learn documentation consulted 2026-10-15
- Azure VM restore options · Microsoft Learn documentation consulted 2026-10-15