Assegnare ruoli di amministratore agli account utente di Microsoft 365 con PowerShell
Questo articolo si applica sia a Microsoft 365 Enterprise che a Office 365 Enterprise.
È possibile assegnare facilmente ruoli agli account utente usando PowerShell per Microsoft 365.
Nota
Informazioni su come assegnare ruoli di amministratore agli account utente con l'interfaccia di amministrazione di Microsoft 365.
Per un elenco di risorse aggiuntive, vedere Gestire utenti e gruppi.
Assegnare ruoli agli account utente tramite Microsoft Graph PowerShell
Nota
Il modulo Azure Active Directory viene sostituito da Microsoft Graph PowerShell SDK. È possibile usare Microsoft Graph PowerShell SDK per accedere a tutte le API di Microsoft Graph. Per altre informazioni, vedere Inizia a usare Attività iniziali con Microsoft Graph PowerShell SDK.
Per prima cosa, usare un account amministratore di Microsoft Entra DC o cloud application admin per connettersi al tenant di Microsoft 365. I cmdlet in questo articolo richiedono l'ambito di autorizzazione RoleManagement.ReadWrite.Directory o una delle altre autorizzazioni elencate nella pagina di riferimento dell'API Graph "List subscribedSkus". Alcuni comandi in questo articolo possono richiedere ambiti di autorizzazione diversi, nel qual caso questa operazione verrà annotata nella sezione pertinente.
Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"
Per altre informazioni, vedere Informazioni sui ruoli di amministratore.
Identificare quindi il nome di accesso dell'account utente che si vuole aggiungere a un ruolo (ad esempio: fredsm@contoso.com). Questo nome è noto anche come nome dell'entità utente (UPN).
Successivamente, determinare il nome del ruolo. Vedere Ruoli predefiniti di Microsoft Entra.
Nota
Prestare attenzione alle note in questo articolo. Alcuni nomi di ruolo sono diversi per Azure Active Directory (Azure AD) PowerShell. Ad esempio, il ruolo amministratore di SharePoint nell'interfaccia di amministrazione di Microsoft 365 è Amministratore del servizio SharePoint in Azure AD PowerShell.
Compilare quindi l'UPN utente e i nomi dei ruoli ed eseguire questi comandi:
$userUPN="<user UPN>"
$roleName="<role name>"
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
if ($role -eq $null) {
$roleTemplate = (Get-MgDirectoryRoleTemplate | Where-Object {$_.displayName -eq $roleName}).id
New-MgDirectoryRole -DisplayName $roleName -RoleTemplateId $roleTemplate
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
}
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id
$newRoleMember =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgDirectoryRoleMemberByRef -DirectoryRoleId $role.Id -BodyParameter $newRoleMember
Di seguito è riportato un esempio di set di comandi completato che assegna il ruolo di amministratore del servizio SharePoint all'account belindan@contoso.com :
$userUPN="adelev@contoso.com"
$roleName="Exchange Administrator"
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
if ($role -eq $null) {
$roleTemplate = (Get-MgDirectoryRoleTemplate | Where-Object {$_.displayName -eq $roleName}).id
New-MgDirectoryRole -DisplayName $roleName -RoleTemplateId $roleTemplate
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
}
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id
$newRoleMember =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgDirectoryRoleMemberByRef -DirectoryRoleId $role.Id -BodyParameter $newRoleMember
Per visualizzare l'elenco degli ID utente per un ruolo di amministratore specifico, usare questi comandi.
$roleName="<role name>"
Connect-MgGraph -Scopes "Directory.Read.All"
Get-MgDirectoryRole | Where-Object { $_.DisplayName -eq $roleName } | ForEach-Object { Get-MgDirectoryRoleMember -DirectoryRoleId $_.Id }