حذف حسابات مستخدمي Microsoft 365 باستخدام PowerShell

يمكنك استخدام PowerShell ل Microsoft 365 لحذف حسابات المستخدمين واستعادتها.

ملاحظة

تعرف على كيفية استعادة حساب مستخدم باستخدام مركز مسؤولي Microsoft 365.

للحصول على قائمة بالموارد الإضافية، راجع إدارة المستخدمين والمجموعات.

استخدام Microsoft Graph PowerShell لحذف حساب مستخدم

ملاحظة

يتم إهمال وحدة PowerShell ل Azure Active Directory (AzureAD) واستبدالها ب Microsoft Graph PowerShell SDK. يمكنك استخدام Microsoft Graph PowerShell SDK للوصول إلى جميع واجهات برمجة تطبيقات Microsoft Graph. لمزيد من المعلومات، راجع بدء استخدام Microsoft Graph PowerShell SDK.

راجع أيضا تثبيت Microsoft Graph PowerShell SDKوالترقية من Azure AD PowerShell إلى Microsoft Graph PowerShell للحصول على معلومات حول كيفية التثبيت والترقية إلى Microsoft Graph PowerShell، على التوالي.

للحصول على معلومات حول كيفية استخدام أساليب مختلفة للمصادقة Connect-Graph في برنامج نصي غير مراقب، راجع المقالة Cmdlets الوحدة النمطية للمصادقة في Microsoft Graph PowerShell.

يتطلب حذف حساب مستخدم نطاق إذن User.ReadWrite.All، المدرج في الصفحة المرجعية لواجهة برمجة تطبيقات Microsoft Graph 'Assign license'.

نطاق إذن User.Read.All مطلوب لقراءة تفاصيل حساب المستخدم في المستأجر.

أولا، اتصل بمستأجر Microsoft 365.

# Connect to your tenant
Connect-MgGraph -Scopes User.Read.All, User.ReadWrite.All

بعد الاتصال، استخدم بناء الجملة التالي لإزالة حساب مستخدم فردي:

$userName="<display name>"
# Get the user
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
# Remove the user
Remove-MgUser -UserId $userId -Confirm:$false

يزيل هذا المثال حساب المستخدم Caleb Sills.

$userName="Caleb Sills"
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
Remove-MgUser -UserId $userId -Confirm:$false

استعادة حساب مستخدم

لاستعادة حساب مستخدم باستخدام Microsoft Graph PowerShell، اتصل أولا بمستأجر Microsoft 365.

لاستعادة حساب مستخدم محذوف، مطلوب نطاق الإذن Directory.ReadWrite.All . الاتصال بالمستأجر مع نطاق التساهل هذا:

# Connect to your tenant
Connect-MgGraph -Scopes Directory.ReadWrite.All

لم تعد حسابات المستخدمين المحذوفة موجودة إلا كعناصر في الدليل، لذلك لا يمكنك البحث عن حساب المستخدم لاستعادته. بدلا من ذلك، استخدم البرنامج النصي PowerShell التالي للبحث في الدليل عن كائنات محذوفة من نوع microsoft.graph.user:

$DeletedUsers = Get-MgDirectoryDeletedItem -DirectoryObjectId microsoft.graph.user -Property '*'
$DeletedUsers = $DeletedUsers.AdditionalProperties['value']
foreach ($deletedUser in $DeletedUsers)
{
   $deletedUser | Format-Table
}

سيبدو إخراج هذا البرنامج النصي، بافتراض وجود أي كائنات مستخدم محذوفة في الدليل، كما يلي:

Key               Value
---               -----
businessPhones    {}
displayName       Caleb Sills
givenName         Caleb
mail              CalebS@litware.com
surname           Sills
userPrincipalName cdea706c3fdc4bbd95925d92d9f71eb8CalebS@litware.com
id                cdea706c-3fdc-4bbd-9592-5d92d9f71eb8

استخدم بناء الجملة التالي لاستعادة حساب مستخدم فردي:

# Input user account ID
$userId = "<id>"
# Restore the user
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId

يستعيد هذا المثال حساب calebs@litwareinc.com المستخدم باستخدام قيمة $userID من إخراج البرنامج النصي أعلاه.

$userId = "cdea706c-3fdc-4bbd-9592-5d92d9f71eb8"
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId

يبدو إخراج هذا الأمر كما يلي:

Id                                   DeletedDateTime
--                                   ---------------
cdea706c-3fdc-4bbd-9592-5d92d9f71eb8

راجع أيضًا

إدارة حسابات مستخدمي Microsoft 365 والتراخيص والمجموعات باستخدام PowerShell

إدارة Microsoft 365 باستخدام PowerShell

بدء استخدام PowerShell ل Microsoft 365