Zuweisen von Administratorrollen zu Microsoft 365-Benutzerkonten mit PowerShell

Dieser Artikel gilt sowohl für Microsoft 365 Enterprise als auch für Office 365 Enterprise.

Mithilfe von PowerShell für Microsoft 365 können Sie Benutzerkonten problemlos Rollen zuweisen.

Hinweis

Erfahren Sie, wie Sie Benutzerkonten mit dem Microsoft 365 Admin Center Administratorrollen zuweisen.

Eine Liste mit zusätzlichen Ressourcen finden Sie unter Verwalten von Benutzern und Gruppen.

Zuweisen von Rollen zu Benutzerkonten mithilfe von Microsoft Graph PowerShell

Hinweis

Das Azure Active Directory-Modul wird durch das Microsoft Graph PowerShell SDK ersetzt. Sie können das Microsoft Graph PowerShell-SDK verwenden, um auf alle Microsoft Graph-APIs zuzugreifen. Weitere Informationen finden Sie unter Erste Schritte mit dem Microsoft Graph PowerShell-SDK.

Verwenden Sie zunächst ein Microsoft Entra DC-Administrator-, Cloud Application Admin- oder globales Administratorkonto, um eine Verbindung mit Ihrem Microsoft 365-Mandanten herzustellen. Die Cmdlets in diesem Artikel erfordern den Berechtigungsbereich RoleManagement.ReadWrite.Directory oder eine der anderen Berechtigungen, die auf der Graph-API Referenzseite "SubscribedSkus auflisten" aufgeführt sind. Einige Befehle in diesem Artikel erfordern möglicherweise unterschiedliche Berechtigungsbereiche. In diesem Fall wird dies im entsprechenden Abschnitt notiert.

Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"

Weitere Informationen finden Sie unter Informationen zu Administratorrollen.

Identifizieren Sie als Nächstes den Anmeldenamen des Benutzerkontos, das Sie einer Rolle hinzufügen möchten (Beispiel: fredsm@contoso.com). Dies wird auch als Benutzerprinzipalname (UPN) bezeichnet.

Ermitteln Sie nun den Namen der Rolle. Weitere Informationen finden Sie unter Microsoft Entra integrierten Rollen.

Hinweis

Achten Sie auf die Hinweise in diesem Artikel. Einige Rollennamen unterscheiden sich für Azure Active Directory (Azure AD) PowerShell. Beispielsweise ist die SharePoint-Administratorrolle im Microsoft 365 Admin Center SharePoint-Dienstadministrator in Azure AD PowerShell.

Geben Sie als Nächstes den Benutzer-UPN und die Rollennamen ein, und führen Sie die folgenden Befehle aus:

$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

Hier sehen Sie ein Beispiel für einen abgeschlossenen Befehlssatz, der dem Konto die belindan@contoso.com SharePoint-Dienstadministratorrolle zuweist:

$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

Verwenden Sie diese Befehle, um die Liste der Benutzer-IDs für eine bestimmte Administratorrolle anzuzeigen.

$roleName="<role name>"
Connect-MgGraph -Scopes "Directory.Read.All"
Get-MgDirectoryRole | Where-Object { $_.DisplayName -eq $roleName } | ForEach-Object { Get-MgDirectoryRoleMember -DirectoryRoleId $_.Id }

Siehe auch