הסרת רשיונות Microsoft 365 מחשבונות משתמשים באמצעות PowerShell

מאמר זה חל הן על Microsoft 365 Enterprise והן Office 365 Enterprise.

הערה

למד כיצד להסיר רשיונות מחשבונות משתמשים באמצעות מרכז הניהול של Microsoft 365. לקבלת רשימה של משאבים נוספים, ראה ניהול משתמשים וקבוצות.

שימוש ב- SDK של Microsoft Graph PowerShell

תחילה, התחבר לדייר Microsoft 365 שלך.

הקצאה והסרה של רשיונות עבור משתמש דורשות את טווח ההרשאה User.ReadWrite.All או אחת מההרשאות האחרות המפורטות בדף ההפניה ל- Graph API של 'הקצאת רשיון'.

טווח ההרשאה Organization.Read.All נדרש כדי לקרוא את הרשיונות הזמינים בדייר.

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

כדי להציג את פרטי תוכנית הרישוי בארגון שלך, עיין במאמרים הבאים:

הסרת רשיונות מחשבונות משתמשים

כדי להסיר רשיונות מחשבון משתמש קיים, השתמש בתחביר הבא:

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

דוגמה זו מסירה את תוכנית SPE_E5 (Microsoft 365 E5) של המשתמשBelindaN@litwareinc.com:

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

כדי להסיר את כל הרשיונות מקבוצה של משתמשים קיימים בעלי רשיון, השתמש בתחביר הבא:

$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 @{} 
}

כדי להסיר רשיון ספציפי מרשימת משתמשים בקובץ טקסט, בצע את השלבים הבאים. דוגמה זו מסירה את SPE_E5 (Microsoft 365 Enterprise E5) מחשבונות המשתמש המוגדרים בקובץ הטקסט C:\My Documents\Accounts.txt.

  1. צור ושמור קובץ טקסט ב- C:\My Documents\Accounts.txt המכיל חשבון אחד בכל שורה באופן הבא:

    akol@contoso.com
    tjohnston@contoso.com
    kakers@contoso.com
    
  2. השתמש בפקודה הבאה:

    $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 @{}
    }
    

דרך נוספת לפינוי רשיון היא על-ידי מחיקת חשבון המשתמש. לקבלת מידע נוסף, ראה מחיקה ושחזור של חשבונות משתמשים באמצעות PowerShell.

למידע נוסף

ניהול חשבונות משתמשים, רשיונות וקבוצות של Microsoft 365 באמצעות PowerShell

ניהול Microsoft 365 באמצעות PowerShell

תחילת העבודה עם PowerShell עבור Microsoft 365