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

Microsoft Hardware Warranty AdministratorMicrosoft Entra built-in role

Create and manage all aspects warranty claims and entitlements for Microsoft manufactured hardware, like Surface and HoloLens.

Role ID1501b917-7653-4ff9-a4b5-203eaf33784f
PrivilegedNo
Permissions6

What it can do

PermissionWhat it allows
microsoft.hardware.support/shippingAddress/allProperties/allTasksCreate, read, update, and delete shipping addresses for Microsoft hardware warranty claims, including shipping addresses created by others
microsoft.hardware.support/shippingStatus/allProperties/readRead shipping status for open Microsoft hardware warranty claims
microsoft.hardware.support/warrantyClaims/allProperties/allTasksCreate and manage all aspects of Microsoft hardware warranty claims
microsoft.office365.messageCenter/messages/readRead messages in Message Center in the Microsoft 365 admin center, excluding security messages
microsoft.office365.supportTickets/allEntities/allTasksCreate and manage Microsoft 365 service requests
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 Microsoft Hardware Warranty Administrator for <reason>"
    RoleDefinitionId = "1501b917-7653-4ff9-a4b5-203eaf33784f"
    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 '1501b917-7653-4ff9-a4b5-203eaf33784f'" -ExpandProperty Principal |
    ForEach-Object { $_.Principal.AdditionalProperties.displayName }

Related roles

Find the smallest role for a task →