Przypisywanie ról administratora do kont użytkowników platformy Microsoft 365 przy użyciu programu PowerShell

Ten artykuł dotyczy zarówno Microsoft 365 Enterprise, jak i Office 365 Enterprise.

Role można łatwo przypisywać do kont użytkowników przy użyciu programu PowerShell dla platformy Microsoft 365.

Uwaga

Dowiedz się, jak przypisywać role administratora do kont użytkowników przy użyciu Centrum administracyjne platformy Microsoft 365.

Aby uzyskać listę dodatkowych zasobów, zobacz Zarządzanie użytkownikami i grupami.

Przypisywanie ról do kont użytkowników przy użyciu programu Microsoft Graph PowerShell

Uwaga

Moduł usługi Azure Active Directory jest zastępowany przez zestaw Microsoft Graph PowerShell SDK. Aby uzyskać dostęp do wszystkich interfejsów API programu Microsoft Graph, możesz użyć zestawu Microsoft Graph PowerShell SDK. Aby uzyskać więcej informacji, zobacz Wprowadzenie do zestawu Microsoft Graph PowerShell SDK.

Najpierw użyj Microsoft Entra administratora kontrolera domeny, Administracja aplikacji w chmurze lub konta administratora globalnego, aby nawiązać połączenie z dzierżawą platformy Microsoft 365. Polecenia cmdlet w tym artykule wymagają zakresu uprawnień RoleManagement.ReadWrite.Directory lub jednego z innych uprawnień wymienionych na stronie odwołania interfejs Graph API "List subscribedSkus". Niektóre polecenia w tym artykule mogą wymagać różnych zakresów uprawnień. W takim przypadku zostanie to zanotowane w odpowiedniej sekcji.

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

Aby uzyskać więcej informacji, zobacz: Role administratora — informacje.

Następnie zidentyfikuj nazwę logowania konta użytkownika, które chcesz dodać do roli (na przykład: fredsm@contoso.com). Jest to również nazywane główną nazwą użytkownika (UPN).

Następnie określ nazwę roli. Zobacz Microsoft Entra wbudowanych ról.

Uwaga

Zwróć uwagę na notatki w tym artykule. Niektóre nazwy ról różnią się w przypadku programu PowerShell usługi Azure Active Directory (Azure AD). Na przykład rola administratora programu SharePoint w Centrum administracyjne platformy Microsoft 365 jest administratorem usługi programu SharePoint w programie Azure AD programu PowerShell.

Następnie wypełnij nazwę UPN użytkownika i nazwy ról i uruchom następujące polecenia:

$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

Oto przykład ukończonego zestawu poleceń, który przypisuje rolę administratora usługi programu SharePoint do belindan@contoso.com konta:

$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

Aby wyświetlić listę identyfikatorów użytkowników dla określonej roli administratora, użyj tych poleceń.

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

Zobacz też