azureblog.co.uk
← cd ~/roles
// roles/entra

Exchange Backup AdministratorMicrosoft Entra built-in role

Back up and restore content (including granular restore) for Exchange in Microsoft 365 Backup

Role ID49eb8f75-97e9-4e37-9b2b-6c3ebfcffa31
PrivilegedNo
Permissions12

What it can do

PermissionWhat it allows
microsoft.azure.serviceHealth/allEntities/allTasksRead and configure Azure Service Health
microsoft.azure.supportTickets/allEntities/allTasksCreate and manage Azure support tickets
microsoft.backup/exchangeProtectionPolicies/allProperties/allTasksCreate and manage Exchange Online protection policy in Microsoft 365 Backup
microsoft.backup/exchangeRestoreSessions/allProperties/allTasksRead and configure restore session for Exchange Online in Microsoft 365 Backup
microsoft.backup/restorePoints/userMailboxes/allProperties/allTasksManage all restore points associated with selected Exchange Online mailboxes in M365 Backup
microsoft.backup/userMailboxProtectionUnits/allProperties/allTasksManage mailboxes added to Exchange Online protection policy in Microsoft 365 Backup
microsoft.backup/userMailboxRestoreArtifacts/allProperties/allTasksManage mailboxes added to restore session for Exchange Online in Microsoft 365 Backup
microsoft.office365.network/performance/allProperties/readRead all network performance properties in the Microsoft 365 admin center
microsoft.office365.serviceHealth/allEntities/allTasksRead and configure Service Health in the Microsoft 365 admin center
microsoft.office365.supportTickets/allEntities/allTasksCreate and manage Microsoft 365 service requests
microsoft.office365.usageReports/allEntities/allProperties/readRead Office 365 usage reports
microsoft.office365.webPortal/allEntities/standard/readRead basic properties on all resources in the Microsoft 365 admin center

Assign it

The role ID is the same in every tenant, so these work as they are. Make it eligible through PIM:

powershell13 lines
Connect-MgGraph -Scopes "RoleEligibilitySchedule.ReadWrite.Directory"
$user = Get-MgUser -UserId "jane.doe@contoso.com"
New-MgRoleManagementDirectoryRoleEligibilityScheduleRequest -BodyParameter @{
    Action           = "AdminAssign"
    Justification    = "Needs Exchange Backup Administrator for <reason>"
    RoleDefinitionId = "49eb8f75-97e9-4e37-9b2b-6c3ebfcffa31"
    DirectoryScopeId = "/"
    PrincipalId      = $user.Id
    ScheduleInfo     = @{
        StartDateTime = (Get-Date).ToUniversalTime().ToString("o")
        Expiration    = @{ Type = "afterDuration"; Duration = "P180D" }
    }
}

Who already has it?

powershell3 lines
Connect-MgGraph -Scopes "RoleManagement.Read.Directory"
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '49eb8f75-97e9-4e37-9b2b-6c3ebfcffa31'" -ExpandProperty Principal |
    ForEach-Object { $_.Principal.AdditionalProperties.displayName }

Related roles

Find the smallest role for a task →