Ta bort Microsoft 365-licenser från användarkonton med PowerShell

Denna artikel gäller för både Microsoft 365 Enterprise och Office 365 Enterprise.

Obs!

Lär dig hur du tar bort licenser från användarkonton med Administrationscenter för Microsoft 365. En lista över ytterligare resurser finns i Hantera användare och grupper.

Använda Microsoft Graph PowerShell SDK

Anslut först till din Microsoft 365-klientorganisation.

För att tilldela och ta bort licenser för en användare krävs behörighetsomfånget User.ReadWrite.All eller någon av de andra behörigheterna som anges på referenssidan Tilldela licens Graph API.

Behörighetsomfånget Organization.Read.All krävs för att läsa de licenser som är tillgängliga i klientorganisationen.

Connect-Graph -Scopes User.ReadWrite.All, Organization.Read.All

Information om licensieringsplanen i din organisation finns i följande artiklar:

Ta bort licenser från användarkonton

Om du vill ta bort licenser från ett befintligt användarkonto använder du följande syntax:

Set-MgUserLicense -UserId "<Account>" -RemoveLicenses @("<AccountSkuId1>") -AddLicenses @{}

Det här exemplet tar bort licensieringsplanen för SPE_E5 (Microsoft 365 E5) från användaren BelindaN@litwareinc.com:

$e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
Set-MgUserLicense -UserId "belindan@litwareinc.com" -RemoveLicenses @($e5Sku.SkuId) -AddLicenses @{}

Om du vill ta bort alla licenser från en grupp med befintliga licensierade användare använder du följande syntax:

$licensedUsers = Get-MgUser -Filter 'assignedLicenses/$count ne 0' `
    -ConsistencyLevel eventual -CountVariable licensedUserCount -All `
    -Select UserPrincipalName,DisplayName,AssignedLicenses

foreach($user in $licensedUsers)
{
    $licensesToRemove = $user.AssignedLicenses | Select -ExpandProperty SkuId
    $user = Set-MgUserLicense -UserId $user.UserPrincipalName -RemoveLicenses $licensesToRemove -AddLicenses @{} 
}

Utför följande steg för att ta bort en specifik licens från en lista över användare i en textfil. Det här exemplet tar bort licensen SPE_E5 (Microsoft 365 Enterprise E5) från användarkontona som definierats i textfilen C:\My Documents\Accounts.txt.

  1. Skapa och spara en textfil i C:\My Documents\Accounts.txt som innehåller ett konto på varje rad så här:

    akol@contoso.com
    tjohnston@contoso.com
    kakers@contoso.com
    
  2. Använd följande kommando:

    $x=Get-Content "C:\My Documents\Accounts.txt"
    $e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
    for ($i=0; $i -lt $x.Count; $i++)
    {
    Set-MgUserLicense -UserId $x[$i] -RemoveLicenses @($e5Sku.SkuId) -AddLicenses @{}
    }
    

Ett annat sätt att frigöra en licens är att ta bort användarkontot. Mer information finns i Ta bort och återställa användarkonton med PowerShell.

Se även

Hantera Microsoft 365-användarkonton,-licenser och-grupper med PowerShell

Hantera Microsoft 365 med PowerShell

Börja använda PowerShell för Microsoft 365