Tilordne administratorroller til Microsoft 365-brukerkontoer med PowerShell

Denne artikkelen gjelder for både Microsoft 365 Enterprise og Office 365 Enterprise.

Du kan enkelt tilordne roller til brukerkontoer ved hjelp av PowerShell for Microsoft 365.

Obs!

Lær hvordan du tilordner administratorroller til brukerkontoer med Administrasjonssenter for Microsoft 365.

Hvis du vil ha en liste over flere ressurser, kan du se Administrere brukere og grupper.

Tilordne roller til brukerkontoer ved hjelp av Microsoft Graph PowerShell

Obs!

Azure Active Directory-modulen erstattes av Microsoft Graph PowerShell SDK. Du kan bruke Microsoft Graph PowerShell SDK til å få tilgang til alle Microsoft Graph API-er. Hvis du vil ha mer informasjon, kan du se Komme i gang med Microsoft Graph PowerShell SDK.

Først bruker du en Microsoft Entra DC-administrator, cloud application Admin eller global administratorkonto for å koble til Microsoft 365-leieren. Cmdletene i denne artikkelen krever tillatelsesomfanget RoleManagement.ReadWrite.Directory eller en av de andre tillatelsene som er oppført på referansesiden List subscribedSkus Graph API. Noen kommandoer i denne artikkelen kan kreve ulike tillatelsesomfang, i så fall vil dette bli notert i den aktuelle delen.

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

Hvis du vil ha mer informasjon, kan du se Om administratorroller.

Deretter identifiserer du påloggingsnavnet for brukerkontoen du vil legge til i en rolle (for eksempel: fredsm@contoso.com). Dette er også kjent som brukerhovednavn (UPN).

Deretter bestemmer du navnet på rollen. Se Microsoft Entra innebygde roller.

Obs!

Vær oppmerksom på notatene i denne artikkelen. Noen rollenavn er forskjellige for Azure Active Directory (Azure AD) PowerShell. SharePoint-administratorrollen i Administrasjonssenter for Microsoft 365 er for eksempel SharePoint-tjenesteadministrator i Azure AD PowerShell.

Deretter fyller du ut bruker-UPN- og rollenavnene og kjører disse kommandoene:

$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

Her er et eksempel på et fullført kommandosett som tilordner rollen som tjenesteadministrator for belindan@contoso.com SharePoint til kontoen:

$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

Hvis du vil vise listen over bruker-ID-er for en bestemt administratorrolle, kan du bruke disse kommandoene.

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

Se også