PowerShell を使用して Microsoft 365 サービスへのアクセスを無効にする

この記事は、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 API にアクセスできます。 詳細については、「Microsoft Graph PowerShell SDK の使用を開始する」 を参照してください。

まず、Microsoft Entra DC 管理者Cloud Application 管理、またはグローバル管理者アカウントを使用して、Microsoft 365 テナントに接続します

ユーザーのライセンスの割り当てと削除には、User.ReadWrite.All アクセス許可スコープ、または参照ページの [ライセンスの割り当て] に一覧表示されている他のアクセス許可のいずれかが必要Graph API。

テナントで使用できるライセンスを読み取るために、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 を使用して、サービス プランの対応するフレンドリ名を検索します)。

次の例では、MICROSOFTBOOKINGS (Microsoft Bookings) サービスと LOCKBOX_ENTERPRISE (Customer Lockbox) サービスがオフになっているSPE_E5 (Microsoft 365 E5) を割り当てます。

$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 @()

Set-MgUserLicense-AddLicenses パラメーターの プロパティはDisabledPlans、ユーザーの既存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 を使用したグループを管理する

PowerShell で Microsoft 365を管理する

Microsoft 365 用 PowerShell の使用を開始する