Wyłączanie dostępu do usług Microsoft 365 przy użyciu programu PowerShell
Ten artykuł dotyczy zarówno platformy Microsoft 365 Enterprise, jak i usługi Office 365 Enterprise.
Gdy konto platformy Microsoft 365 ma przypisaną licencję z planu licencjonowania, usługi platformy Microsoft 365 są udostępniane użytkownikowi z tej licencji. Możesz jednak kontrolować usługi platformy Microsoft 365, do których użytkownik może uzyskać dostęp. Na przykład nawet jeśli licencja zezwala na dostęp do usługi SharePoint Online, możesz wyłączyć do niej dostęp. Program PowerShell umożliwia wyłączenie dostępu do dowolnej liczby usług dla określonego planu licencjonowania dla:
- Indywidualne konto.
- Grupa kont.
- Wszystkie konta w organizacji.
Uwaga
Istnieją zależności usługi platformy Microsoft 365, które mogą uniemożliwić wyłączenie określonej usługi, gdy od niej zależą inne usługi.
Korzystanie z zestawu Microsoft Graph PowerShell SDK
Uwaga
Moduł usługi Azure Active Directory jest zastępowany przez zestaw Microsoft Graph PowerShell SDK. Aby uzyskać dostęp do wszystkich interfejsów API programu Microsoft Graph, możesz użyć zestawu Microsoft Graph PowerShell SDK. Aby uzyskać więcej informacji, zobacz Wprowadzenie do zestawu Microsoft Graph PowerShell SDK.
Najpierw użyj konta administratora kontrolera domeny usługi Microsoft Entra lub konta administratora aplikacji w chmurze , aby nawiązać połączenie z dzierżawą platformy Microsoft 365.
Przypisywanie i usuwanie licencji dla użytkownika wymaga zakresu uprawnień User.ReadWrite.All lub jednego z innych uprawnień wymienionych na stronie referencyjnej interfejsu API programu Graph "Przypisywanie licencji".
Zakres uprawnień Organization.Read.All jest wymagany do odczytu licencji dostępnych w dzierżawie.
Connect-Graph -Scopes User.ReadWrite.All, Organization.Read.All
Następnie użyj tego polecenia, aby wyświetlić dostępne plany licencjonowania, znane również jako SkuPartNumber:
Get-MgSubscribedSku | Select SkuId, SkuPartNumber, ServicePlans | Sort SkuPartNumber
Aby uzyskać więcej informacji, zobacz Wyświetlanie licencji i usług za pomocą programu PowerShell.
Aby wyświetlić przed i po wynikach procedur w tym temacie, zobacz Wyświetlanie licencji konta i szczegółów usługi za pomocą programu PowerShell.
Wyłączanie określonych usług Platformy Microsoft 365 dla określonych użytkowników dla określonego planu licencjonowania
Aby wyłączyć określony zestaw usług Platformy Microsoft 365 dla użytkowników dla określonego planu licencjonowania, wykonaj następujące kroki:
Najpierw wyświetl listę planów licencjonowania dostępnych w dzierżawie przy użyciu następującego polecenia.
Get-MgSubscribedSku | Select SkuPartNumber
SkuPartNumber
-------------
EMSPREMIUM
SPE_E5
RIGHTSMANAGEMENT_ADHOC
Następnie użyj polecenia SkuPartNumber z powyższego polecenia, aby wyświetlić listę planów usług dostępnych dla danego planu licencji (SKU).
W poniższym przykładzie wymieniono wszystkie plany usług dostępne dla 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
Aby uzyskać pełną listę planów licencji (znanych również jako nazwy produktów), ich dołączone plany usług i odpowiadające im przyjazne nazwy, zobacz Nazwy produktów i identyfikatory planów usług na potrzeby licencjonowania. (Wyszukaj przy użyciu identyfikatora ServicePlanId, aby wyszukać odpowiednią przyjazną nazwę planu usługi wyszukiwania).
Poniższy przykład przypisuje SPE_E5 (Microsoft 365 E5) z wyłączonymi usługami MICROSOFTBOOKINGS (Microsoft Bookings) i LOCKBOX_ENTERPRISE (Customer Lockbox):
$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 @()
Właściwość DisabledPlans
parametru -AddLicenses
w Set-MgUserLicense
pliku spowoduje zastąpienie istniejącej DisabledPlans
wartości użytkownika. Aby zachować stan istniejących planów usług, bieżący stan planów usług użytkownika musi zostać scalony z nowymi planami, które zostaną wyłączone.
Brak dołączenia istniejącego DisabledPlans
spowoduje włączenie wcześniej wyłączonego planu użytkownika.
Poniższy przykład aktualizuje użytkownika za pomocą SPE_E5 (Microsoft 365 E5) i wyłącza plany usług Sway i Forms, pozostawiając istniejące wyłączone plany użytkownika w bieżącym stanie:
## 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 @()
Tematy pokrewne
Zarządzanie platformą Microsoft 365 za pomocą programu PowerShell
Wprowadzenie do programu PowerShell dla platformy Microsoft 365