تعطيل الوصول إلى خدمات Microsoft 365 باستخدام PowerShell

تنطبق هذه المقالة على كل من Microsoft 365 Enterprise وOffice 365 Enterprise.

عند تعيين ترخيص لحساب Microsoft 365 من خطة ترخيص، يتم توفير خدمات Microsoft 365 للمستخدم من هذا الترخيص. ومع ذلك، يمكنك التحكم في خدمات Microsoft 365 التي يمكن للمستخدم الوصول إليها. على سبيل المثال، على الرغم من أن الترخيص يسمح بالوصول إلى خدمة SharePoint Online، يمكنك تعطيل الوصول إليها. يمكنك استخدام PowerShell لتعطيل الوصول إلى أي عدد من الخدمات لخطة ترخيص معينة من أجل:

  • حساب فردي.
  • مجموعة من الحسابات.
  • جميع الحسابات في مؤسستك.

ملاحظة

هناك تبعيات خدمة Microsoft 365 التي يمكن أن تمنعك من تعطيل خدمة محددة عندما تعتمد عليها خدمات أخرى.

استخدام Microsoft Graph PowerShell SDK

ملاحظة

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

أولا، استخدم حساب مسؤول Microsoft Entra DC أو مسؤول تطبيق السحابةللاتصال بمستأجر Microsoft 365.

يتطلب تعيين التراخيص للمستخدم وإزالتها نطاق الإذن User.ReadWrite.All أو أحد الأذونات الأخرى المدرجة في الصفحة المرجعية لواجهة برمجة تطبيقات Graph "تعيين ترخيص".

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

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

بعد ذلك، استخدم هذا الأمر لعرض خطط الترخيص المتوفرة، والمعروفة أيضا باسم SkuPartNumber:

Get-MgSubscribedSku | Select SkuId, SkuPartNumber, ServicePlans | Sort SkuPartNumber

لمزيد من المعلومات، راجع عرض التراخيص والخدمات باستخدام PowerShell.

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

تعطيل خدمات Microsoft 365 محددة لمستخدمين محددين لخطة ترخيص محددة

لتعطيل مجموعة معينة من خدمات Microsoft 365 للمستخدمين لخطة ترخيص معينة، قم بتنفيذ الخطوات التالية:

قم أولا بإدراج خطط الترخيص المتوفرة في المستأجر الخاص بك باستخدام الأمر التالي.

Get-MgSubscribedSku | Select SkuPartNumber

SkuPartNumber
-------------
EMSPREMIUM
SPE_E5
RIGHTSMANAGEMENT_ADHOC

بعد ذلك، استخدم SkuPartNumber من الأمر أعلاه، واسرد خطط الخدمة المتوفرة لخطة ترخيص معينة (Sku).

يسرد المثال التالي جميع خطط الخدمة المتوفرة SPE_E5 (Microsoft 365 E5).

Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5' |  select -ExpandProperty ServicePlans
AppliesTo ProvisioningStatus ServicePlanId                        ServicePlanName
--------- ------------------ -------------                        ---------------
User      Success            b21a6b06-1988-436e-a07b-51ec6d9f52ad PROJECT_O365_P3
User      Success            64bfac92-2b17-4482-b5e5-a0304429de3e MICROSOFTENDPOINTDLP
User      Success            199a5c09-e0ca-4e37-8f7c-b05d533e1ea2 MICROSOFTBOOKINGS
User      Success            6db1f1db-2b46-403f-be40-e39395f08dbb CUSTOMER_KEY
User      Success            4a51bca5-1eff-43f5-878c-177680f191af WHITEBOARD_PLAN3
User      Success            07699545-9485-468e-95b6-2fca3738be01 FLOW_O365_P3
User      Success            9c0dab89-a30c-4117-86e7-97bda240acd2 POWERAPPS_O365_P3
User      Success            e212cbc7-0961-4c40-9825-01117710dcb1 FORMS_PLAN_E5
User      Success            57ff2da0-773e-42df-b2af-ffb7a2317929 TEAMS1
User      Success            21b439ba-a0ca-424f-a6cc-52f954a5b111 WIN10_PRO_ENT_SUB
User      Success            eec0eb4f-6444-4f95-aba0-50c24d67f998 AAD_PREMIUM_P2
User      Success            c1ec4a95-1f05-45b3-a911-aa3fa01094f5 INTUNE_A
User      Success            7547a3fe-08ee-4ccb-b430-5077c5041653 YAMMER_ENTERPRISE
User      Success            a23b959c-7ce8-4e57-9140-b90eb88a9e97 SWAY
User      Success            e95bec33-7c88-4a70-8e19-b10bd9d0c014 SHAREPOINTWAC
User      Success            5dbe027f-2339-4123-9542-606e4d348a72 SHAREPOINTENTERPRISE
User      Success            b737dad2-2f6c-4c65-90e3-ca563267e8b9 PROJECTWORKMANAGEMENT
User      Success            43de0ff5-c92c-492b-9116-175376d08c38 OFFICESUBSCRIPTION
User      Success            0feaeb32-d00e-4d66-bd5a-43b5b83db82c MCOSTANDARD
User      Success            9f431833-0334-42de-a7dc-70aa40db46db LOCKBOX_ENTERPRISE
User      Success            efb87545-963c-4e0d-99df-69c6916d9eb0 EXCHANGE_S_ENTERPRISE

للحصول على قائمة كاملة بخطط الترخيص (المعروفة أيضا باسم أسماء المنتجات)، وخطط الخدمة المضمنة الخاصة بها، وأسماءها المألوفة المقابلة، راجع أسماء المنتجات ومعرفات خطة الخدمة للترخيص. (ابحث باستخدام ServicePlanId للبحث عن الاسم المألوف المقابل لخطة الخدمة).

يعين المثال التالي SPE_E5 (Microsoft 365 E5) مع إيقاف تشغيل خدمات MICROSOFTBOOKINGS (Microsoft Bookings) LOCKBOX_ENTERPRISE (مربع تأمين العميل):

$e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
$disabledPlans = $e5Sku.ServicePlans | `
    Where ServicePlanName -in ("LOCKBOX_ENTERPRISE", "MICROSOFTBOOKINGS") | `
    Select -ExpandProperty ServicePlanId

$addLicenses = @(
    @{
        SkuId = $e5Sku.SkuId
        DisabledPlans = $disabledPlans
    }
)

Set-MgUserLicense -UserId "belinda@litwareinc.com" -AddLicenses $addLicenses -RemoveLicenses @()

DisabledPlans ستقوم خاصية المعلمة -AddLicenses في Set-MgUserLicense بالكتابة فوق القيمة الموجودة DisabledPlans للمستخدم. للحفاظ على حالة خطط الخدمة الحالية، يجب دمج حالة خطط الخدمة الحالية للمستخدم مع الخطط الجديدة التي سيتم تعطيلها.

سيؤدي الفشل في تضمين الموجود DisabledPlans إلى تمكين خطة المستخدم المعطلة مسبقا.

يقوم المثال التالي بتحديث مستخدم مع SPE_E5 (Microsoft 365 E5) وإيقاف تشغيل خطط خدمة Sway و Forms أثناء ترك الخطط المعطلة الحالية للمستخدم في حالته الحالية:

## Get the services that have already been disabled for the user.
$userLicense = Get-MgUserLicenseDetail -UserId "belinda@fdoau.onmicrosoft.com"
$userDisabledPlans = $userLicense.ServicePlans | `
    Where ProvisioningStatus -eq "Disabled" | `
    Select -ExpandProperty ServicePlanId

## Get the new service plans that are going to be disabled
$e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
$newDisabledPlans = $e5Sku.ServicePlans | `
    Where ServicePlanName -in ("SWAY", "FORMS_PLAN_E5") | `
    Select -ExpandProperty ServicePlanId

## Merge the new plans that are to be disabled with the user's current state of disabled plans
$disabledPlans = ($userDisabledPlans + $newDisabledPlans) | Select -Unique

$addLicenses = @(
    @{
        SkuId = $e5Sku.SkuId
        DisabledPlans = $disabledPlans
    }
)
## Update user's license
Set-MgUserLicense -UserId "belinda@litwareinc.onmicrosoft.com" -AddLicenses $addLicenses -RemoveLicenses @()

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

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

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