Privileged Role Administrator
Attack path
A Privileged Role Administrator can manage Entra role assignments and Privileged Identity Management settings, so compromise provides a direct route to stronger roles. An attacker could assign Global Administrator or another privileged role to a controlled identity, make an eligible assignment active, or grant tenant-wide admin consent to an application with high-impact Microsoft Graph permissions. They could then use the new human or workload identity to take control of directory objects and access data across connected Microsoft 365 services.
Description
Can manage role assignments in Microsoft Entra ID, and all aspects of Privileged Identity Management.
Details
Users with this role can manage role assignments in Microsoft Entra ID, as well as within Microsoft Entra Privileged Identity Management. In addition, this role allows management of all aspects of Privileged Identity Management.
Directory Actions28
| Action | Condition |
|---|---|
microsoft.directory/accessReviews/definitions.applications/allProperties/read | null |
microsoft.directory/accessReviews/definitions.directoryRoles/allProperties/allTasks | null |
microsoft.directory/accessReviews/definitions.groups/allProperties/read | null |
microsoft.directory/accessReviews/definitions.groupsAssignableToRoles/allProperties/update | null |
microsoft.directory/accessReviews/definitions.groupsAssignableToRoles/create | null |
microsoft.directory/accessReviews/definitions.groupsAssignableToRoles/delete | null |
microsoft.directory/administrativeUnits/allProperties/allTasks | null |
microsoft.directory/authorizationPolicy/allProperties/allTasks | null |
microsoft.directory/directoryRoles/allProperties/allTasks | null |
microsoft.directory/groupsAssignableToRoles/allProperties/update | null |
microsoft.directory/groupsAssignableToRoles/assignLicense | null |
microsoft.directory/groupsAssignableToRoles/create | null |
microsoft.directory/groupsAssignableToRoles/delete | null |
microsoft.directory/groupsAssignableToRoles/reprocessLicenseAssignment | null |
microsoft.directory/groupsAssignableToRoles/restore | null |
microsoft.directory/oAuth2PermissionGrants/allProperties/allTasks | null |
microsoft.directory/permissionGrantPolicies/allProperties/read | null |
microsoft.directory/permissionGrantPolicies/allProperties/update | null |
microsoft.directory/permissionGrantPolicies/create | null |
microsoft.directory/permissionGrantPolicies/delete | null |
microsoft.directory/privilegedIdentityManagement/allProperties/allTasks | null |
microsoft.directory/roleAssignments/allProperties/allTasks | null |
microsoft.directory/roleDefinitions/allProperties/allTasks | null |
microsoft.directory/scopedRoleMemberships/allProperties/allTasks | null |
microsoft.directory/servicePrincipals/appRoleAssignedTo/update | null |
microsoft.directory/servicePrincipals/managePermissionGrantsForAll.microsoft-company-admin | null |
microsoft.directory/servicePrincipals/permissions/update | null |
microsoft.office365.webPortal/allEntities/standard/read | null |
Graph API Permissions49
Microsoft do not provide a direct mapping between Directory actions and Graph API permissions, despite this being necessary for delegated (interactive) access. MSAdminRoles.com has meticulously compiled a list of the Graph API permissions that each built-in admin role enables you to utilise. Please note this listing is not 100% accurate. Graph API permissions and Entra RBAC operate as two independent authorisation planes and do not map to each other on a one-to-one basis.
AccessReview.Read.AllAccessReview.ReadWrite.AllAccessReview.ReadWrite.MembershipAdministrativeUnit.Read.AllAdministrativeUnit.ReadWrite.AllApplication.Read.AllApplication.ReadWrite.AllAppRoleAssignment.ReadWrite.AllDelegatedPermissionGrant.Read.AllDelegatedPermissionGrant.ReadWrite.AllDirectory.Read.AllGroup.Read.AllGroup.ReadWrite.AllPolicy.Read.AllPolicy.Read.PermissionGrantPolicy.ReadWrite.AccessReviewPolicy.ReadWrite.AuthorizationPolicy.ReadWrite.PermissionGrantPrivilegedAccess-CustomExt.Read.AllPrivilegedAccess-CustomExt.ReadWrite.AllPrivilegedAccess.Read.AzureADPrivilegedAccess.Read.AzureADGroupPrivilegedAccess.ReadWrite.AzureADPrivilegedAccess.ReadWrite.AzureADGroupPrivilegedAssignmentSchedule.Read.AzureADGroupPrivilegedAssignmentSchedule.Read.EntraAppRolePrivilegedAssignmentSchedule.ReadWrite.AzureADGroupPrivilegedAssignmentSchedule.ReadWrite.EntraAppRolePrivilegedAssignmentSchedule.Remove.AzureADGroupPrivilegedEligibilitySchedule.Read.AzureADGroupPrivilegedEligibilitySchedule.Read.EntraAppRolePrivilegedEligibilitySchedule.ReadWrite.AzureADGroupPrivilegedEligibilitySchedule.ReadWrite.EntraAppRolePrivilegedEligibilitySchedule.Remove.AzureADGroupProgramControl.Read.AllProgramControl.ReadWrite.AllRoleManagement.Read.AllRoleManagement.Read.DirectoryRoleManagement.ReadWrite.DirectoryRoleManagementAlert.Read.DirectoryRoleManagementAlert.ReadWrite.DirectoryRoleManagementPolicy.Read.AzureADGroupRoleManagementPolicy.Read.DirectoryRoleManagementPolicy.Read.EntraAppRoleRoleManagementPolicy.ReadWrite.AzureADGroupRoleManagementPolicy.ReadWrite.DirectoryRoleManagementPolicy.ReadWrite.EntraAppRoleServicePrincipalEndpoint.Read.AllServicePrincipalEndpoint.ReadWrite.All