MSCommerce PowerShell モジュールに AllowSelfServicePurchase を使用する

PowerShell GalleryMSCommerce PowerShell モジュールが利用できるようになりました。 このモジュールには、組織内のユーザーがセルフサービスで購入できるかどうかを制御できる AllowSelfServicePurchase 向けの PolicyID パラメーター値が含まれます。

MSCommerce PowerShell モジュールを使用すると以下のことができます。

  • AllowSelfServicePurchase パラメーター値の既定の状態 (有効、無効、または支払い方法のない試用を許可するかどうか) を表示する
  • 該当する製品の一覧と、セルフサービス購入が有効か無効か、または支払い方法なしで試用版を許可するかを表示する
  • 特定の製品の現在の設定を表示または変更し、有効または無効にする
  • 支払い方法のない試用版の設定を表示または変更する

要件

MSCommerce PowerShell モジュールを使用するには、以下の物が必要です。

  • Windows 10 以降のオペレーティング システム。
  • PowerShell 5 以下。 現在、PowerShell 6.x/7.x はこのモジュールではサポートされていません。
  • MSCommerce 製品ポリシーを変更するためのテナントのグローバル管理者ロールまたは課金管理者ロール。
  • MSCommerce 製品ポリシーの読み取り専用リストを表示するテナントのグローバル リーダー ロール。

MSCommerce PowerShell モジュールのインストール

MSCommerce PowerShell モジュールを Windows 10 デバイスに一度インストールして、起動する各 PowerShell セッションにインポートします。 PowerShell GalleryMSCommerce PowerShell モジュールをダウンロードします。

PowerShellGet を使用して MSCommerce PowerShell モジュールをインストールするには、次のコマンドを実行します。

Install-Module -Name MSCommerce

MSCommerce を PowerShell セッションにインポートする

モジュールを Windows 10 デバイスに一度インストールした後、起動する各 PowerShell セッションにインポートします。 PowerShell セッションにインポートするには、次のコマンドを実行します。

Import-Module -Name MSCommerce

自分の資格情報を使用して MSCommerce に接続する

自分の認証情報を使用して PowerShell モジュールに接続するには、次のコマンドを実行します。

Connect-MSCommerce

このコマンドでは、現在の PowerShell セッションを Azure Active Directory テナントに接続します。 このコマンドでは、接続するテナントのユーザー名とパスワードの入力を求められます。 資格情報に対して多要素認証が有効になっている場合は、対話型オプションを使用してサインインします。

AllowSelfServicePurchase の詳細を表示する

組織に基づく AllowSelfServicePurchase パラメーター値の説明と既定の状態を表示するには、次のコマンドを実行します。

Get-MSCommercePolicy -PolicyId AllowSelfServicePurchase

セルフサービス購入製品の一覧とその状態を表示する

利用可能なすべてのセルフサービス購入製品の一覧と各製品の状態を表示するには、次のコマンドを実行します。

Get-MSCommerceProductPolicies -PolicyId AllowSelfServicePurchase

以下のテーブルは、利用可能な製品とその ProductId を一覧表示しています。 また、利用可能な試用版があり、支払い方法を必要としない製品も示されます。 該当する場合は、他のすべての試用版に支払い方法が必要です。 支払い方法が有効になっていない試用版がある製品の場合は、製品を購入する機能を無効にしたまま、試用版を有効にすることができます。 サンプル コマンドについては、「 AllowSelfServicePurchase の状態を表示または設定する」を参照してください。

製品 ProductId 支払い方法のない試用版は有効ですか?
ユーザーごとの Power Apps* CFQ7TTC0LH2H いいえ
ユーザーごとの Power Automate CFQ7TTC0KP0N いいえ
Power Automate RPA CFQ7TTC0KXG6 いいえ
Power BI Premium (スタンドアロン) CFQ7TTC0KXG7 いいえ
Power BI Pro CFQ7TTC0L3PB いいえ
Project Plan 1* CFQ7TTC0HDB1 はい
Project Plan 3* CFQ7TTC0HDB0 いいえ
Visio Plan 1* CFQ7TTC0HD33 いいえ
Visio Plan 2* CFQ7TTC0HD32 いいえ
Windows 365 Enterprise CFQ7TTC0HHS9 いいえ
Windows 365 Business CFQ7TTC0J203 いいえ
Windows ハイブリッド特典付き Windows 365 Business CFQ7TTC0HX99 いいえ
Microsoft 365 F3 CFQ7TTC0LH05 いいえ
Dynamics 365 Marketing CFQ7TTC0LH3N いいえ
Dynamics 365 Marketing Attach CFQ7TTC0LHWP いいえ
Dynamics 365 Marketing の追加アプリケーション CFQ7TTC0LHVK いいえ
Dynamics 365 Marketing Additional Non-Prod Application CFQ7TTC0LHWM いいえ

*これらの ID は変更されています。 以前に古い ID を使用して製品をブロックした場合、新しい ID を使用して製品は自動的にブロックされます。 他の作業は必要ありません。

AllowSelfServicePurchase の状態を表示または設定する

AllowSelfServicePurchaseValue パラメーターを設定して、ユーザーがセルフサービスでの購入を許可または禁止することができます。 OnlyTrialsWithoutPaymentMethod 値を使用して、ユーザーが支払いが必要な試用版がない製品を試すこともできます。 上記の製品一覧を参照して、これらの試用版が有効になっている製品を確認してください。 ユーザーは、 AllowSelfServicePurchase が有効になっている場合にのみ、試用版が終了した後に製品を購入できます。

注:

AllowSelfServicePurchase または OnlyTrialsWithoutPaymentMethod の値を変更すると、その時点から指定された製品に対して行われた試用版または購入にのみ影響します。 指定した製品の既存の試用版または購入は影響を受けません。

次の表では、 Value パラメーターの設定について説明します。

設定 影響
有効 ユーザーは、セルフサービスでの購入を行い、製品の試用版を取得できます。
OnlyRialsWithoutPaymentMethod ユーザーはセルフサービスで購入することはできませんが、支払い方法を追加する必要のない製品の無料試用版を取得できます。 試用版の有効期限が切れた後、ユーザーは有料バージョンの製品を購入できません。
無効 ユーザーは、セルフサービスで購入したり、製品の試用版を取得したりすることはできません。

特定の製品のポリシー設定を取得するには、以下のコマンドを実行します。

Get-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KP0N

特定の製品のポリシー設定を有効にするには、以下のコマンドを実行します。

Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KP0N -Value "Enabled"

特定の製品のポリシー設定を無効にするには、以下のコマンドを実行します。

Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KP0N -Value "Disabled"

ユーザーが支払い方法なしで特定の製品を試すことができるようにするには、次のコマンドを実行します。

Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KP0N -Value "OnlyTrialsWithoutPaymentMethod" 

AllowSelfServicePurchase を無効にするスクリプト例

次の例では、 MSCommerce モジュールをインポートし、アカウントでサインインし、ユーザーごとに ProductId for Power Automate を取得し、その製品の AllowSelfServicePurchase を無効にする方法について説明します。

Import-Module -Name MSCommerce
Connect-MSCommerce #sign-in with your global or billing administrator account when prompted
$product = Get-MSCommerceProductPolicies -PolicyId AllowSelfServicePurchase | where {$_.ProductName -match 'Power Automate per user'}
Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId $product.ProductID -Value "Disabled"

製品に複数の値がある場合は、次の例に示すように、値ごとに個別にコマンドを実行できます。

Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId $product[0].ProductID -Value "Disabled"
Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId $product[1].ProductID -Value "Disabled"

トラブルシューティング

問題

次のようなエラー メッセージが表示されます。

HandleError: PolicyId 'AllowSelfServicePurchase' でポリシーを取得できませんでした、ErrorMessage - 基になる接続が閉じられました: 送信で予期しないエラーが発生しました。

これは、トランスポート層セキュリティ (TLS) の以前のバージョンが原因である可能性があります。 このサービスに接続するときは、TLS 1.2 以降を使用する必要があります

ソリューション

TLS 1.2 にアップグレードします。 次の構文は、SERVICEPointManager セキュリティ プロトコルを更新して TLS1.2 を許可します。

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

詳細については、「 TLS 1.2 を有効にする方法」を参照してください。

セルフサービスによる購入を管理する (管理者) (記事)
セルフサービス購入に関するよくあるご質問 (記事)