Järjestelmänvalvojaroolien määrittäminen Microsoft 365 -käyttäjätileille PowerShellin avulla

Tämä artikkeli koskee sekä Microsoft 365 Enterprise että Office 365 Enterprise.

Voit helposti määrittää rooleja käyttäjätileille käyttämällä PowerShelliä Microsoft 365:lle.

Huomautus

Lue, miten voit määrittää järjestelmänvalvojarooleja käyttäjätileille Microsoft 365 -hallintakeskus avulla.

Lisätietoja lisäresursseista on kohdassa Käyttäjien ja ryhmien hallinta.

Roolien määrittäminen käyttäjätileille Microsoft Graph PowerShellin avulla

Huomautus

Azure Active Directory -moduuli korvataan Microsoft Graph PowerShell SDK:lla. Voit käyttää kaikkia Microsoft Graph -ohjelmointirajapintoja Microsoft Graph PowerShell SDK:n avulla. Lisätietoja on artikkelissa Microsoft Graph PowerShell SDK:n käytön aloittaminen.

Muodosta ensin yhteys Microsoft 365 -vuokraajaanMicrosoft Entra DC-järjestelmänvalvojan, pilvisovelluksen Hallinta tai yleisen järjestelmänvalvojan tilillä. Tämän artikkelin cmdlet-komennot edellyttävät käyttöoikeuden vaikutusaluetta RoleManagement.ReadWrite.Directory tai jonkin muun käyttöoikeuden, joka on lueteltu Graph-ohjelmointirajapintaviittaussivulla List subscribedSkus. Jotkin tämän artikkelin komennot saattavat vaatia eri käyttöoikeusalueita, jolloin tämä mainitaan asianmukaisessa osiossa.

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

Lisätietoa on kohdassa Järjestelmänvalvojan roolien määrääminen.

Määritä seuraavaksi rooliin lisättävän käyttäjätilin kirjautumisnimi (esimerkki: fredsm@contoso.com). Tätä kutsutaan myös täydellisen käyttäjätunnuksen (UPN) nimeksi.

Määritä seuraavaksi roolin nimi. Katso Microsoft Entra valmiita rooleja.

Huomautus

Kiinnitä huomiota tämän artikkelin muistiinpanoihin. Jotkin roolien nimet ovat erilaisia Azure Active Directoryn (Azure AD) PowerShellissä. Esimerkiksi SharePoint-järjestelmänvalvojan rooli Microsoft 365 -hallintakeskus on SharePoint-palvelun järjestelmänvalvoja Azure AD PowerShellissä.

Täytä seuraavaksi käyttäjän täydellinen käyttäjätunnus ja roolien nimet ja suorita seuraavat komennot:

$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

Tässä on esimerkki suoritetusta komentojoukosta, joka määrittää SharePoint-palvelun järjestelmänvalvojan belindan@contoso.com roolin tilille:

$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

Jos haluat näyttää tietyn järjestelmänvalvojaroolin käyttäjätunnusten luettelon, käytä näitä komentoja.

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

Tutustu myös seuraaviin ohjeartikkeleihin: