← cd ~/roles
// roles/entra
IoT Device AdministratorMicrosoft Entra built-in role
Provision new IoT devices, manage their lifecycle, configure certificates, and manage device templates.
| Role ID | 2ea5ce4c-b2d8-4668-bd81-3680bd2d227a |
|---|---|
| Privileged | No |
| Permissions | 10 |
What it can do
| Permission | What it allows |
|---|---|
microsoft.directory/certificateBasedDeviceAuthConfigurations/create | Create Certificate Authorities configurations for IoT Device trust and authentication |
microsoft.directory/certificateBasedDeviceAuthConfigurations/credentials/update | Update crendential related properties on certificate authority configurations for Internet of Things (IoT) device trust and authentication |
microsoft.directory/certificateBasedDeviceAuthConfigurations/delete | Delete certificate authority configurations for Internet of Things (IoT) device |
microsoft.directory/certificateBasedDeviceAuthConfigurations/standard/read | Read standard properties on certificate authority configurations for Internet of Things (IoT) device trust and authentication |
microsoft.directory/deviceTemplates/create | Create Internet of Things (IoT) device templates |
microsoft.directory/deviceTemplates/createDeviceFromTemplate | Create IoT Device from Internet of Things (IoT) device templates |
microsoft.directory/deviceTemplates/delete | Delete Internet of Things (IoT) device templates |
microsoft.directory/deviceTemplates/deviceInstances/read | Read device instances from Internet of Things (IoT) device links |
microsoft.directory/deviceTemplates/owners/read | Read owners on Internet of Things (IoT) device templates |
microsoft.directory/deviceTemplates/owners/update | Update owners on Internet of Things (IoT) device templates |
Assign it
The role ID is the same in every tenant, so these work as they are. Make it eligible through PIM:
Connect-MgGraph -Scopes "RoleEligibilitySchedule.ReadWrite.Directory"
$user = Get-MgUser -UserId "jane.doe@contoso.com"
New-MgRoleManagementDirectoryRoleEligibilityScheduleRequest -BodyParameter @{
Action = "AdminAssign"
Justification = "Needs IoT Device Administrator for <reason>"
RoleDefinitionId = "2ea5ce4c-b2d8-4668-bd81-3680bd2d227a"
DirectoryScopeId = "/"
PrincipalId = $user.Id
ScheduleInfo = @{
StartDateTime = (Get-Date).ToUniversalTime().ToString("o")
Expiration = @{ Type = "afterDuration"; Duration = "P180D" }
}
}Who already has it?
Connect-MgGraph -Scopes "RoleManagement.Read.Directory"
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '2ea5ce4c-b2d8-4668-bd81-3680bd2d227a'" -ExpandProperty Principal |
ForEach-Object { $_.Principal.AdditionalProperties.displayName }Related roles
- Attribute Assignment Administrator · 10 permissions
- Teams Telephony Administrator · 10 permissions
- Compliance Data Administrator · 9 permissions
- Knowledge Manager · 11 permissions
- License Administrator · 9 permissions
- Teams Communications Administrator · 11 permissions
- Dragon Administrator · 8 permissions
- Dynamics 365 Business Central Administrator · 8 permissions