【Office 365】ライセンスサービス情報を一括でエクスポートする

Microsoft 365

Office365でofficeやskypeを利用するユーザーにライセンスを割り当てる必要があるかと思いますが、どのユーザーに何のライセンスが割り当たっているかを確認する方法がユーザー単位で確認する方法しか見つからなかったので、EXCELなどで確認できるように一括でエクスポートする方法をまとめました。

 

スポンサーリンク

ライセンスサービス情報のエクスポート

それではライセンスサービス情報をエクスポートしていきます。

 

Office365プラン名(AccountSkuId)の確認

まず、Office365のテナントへ接続したPowerShellにて、以下のコマンドを実行します。
こちらでテナント情報とプランを確認します。

Get-MsolAccountSku | Format-Table AccountSkuId, SkuPartNumber
 AccountSkuId           SkuPartNumber
 ------------           -------------
 <テナント名>:EXCHANGESTANDARD  EXCHANGESTANDARD 
 

<テナント名>には、Office365のテナント名が入ります。
このテナントで契約しているプランが右側に表示されます。
※上記例だと”EXCHANGESTANDARD”になります。

 

Exchange Online

プラン名Exchange Online プラン 1Exchange Online プラン 2
AccountSkuIDEXCHANGESTANDARDEXCHANGEENTERPRISE

EnterPrise 

プラン名Office 365
Enterprise E1
Office 365
Enterprise E3
Office 365
Enterprise E5
AccountSkuIDSTANDARDPACKENTERPRISEPACKENTERPRISEPREMIUM

 

ライセンスサービス情報をエクスポート

プラン名の確認が済んだら対象のプランのライセンスサービス情報をエクスポートします。
上記で確認した情報(<テナント名>および<プランのAccountSkuId>)を指定し、以下のコマンドを実行します。

$skuList = @(); Get-msoluser -All | % {$upn = $_.UserPrincipalName; $dpn =$_.DisplayName; $_.Licenses | %{$sku = $_.AccountSkuId; $_.ServiceStatus | ForEach-Object { $skuList += @{UserPrincipalName = $upn; DisplayName = $dpn; AccountSkuId = $sku; ServiceName = $_.ServicePlan.ServiceName; ProvisioningStatus = $_.ProvisioningStatus;} } } }; $skuList | select @{n="UserPrincipalName"; e={$_.UserPrincipalName}}, @{n="DisplayName"; e={$_.DisplayName}}, @{n="AccountSkuId"; e={$_.AccountSkuId}}, @{n="ServiceName"; e={$_.ServiceName}}, @{n="ProvisioningStatus"; e={$_.ProvisioningStatus}} | Where-Object {$_.AccountSkuId -eq "<テナント名>:<プランのAccountSkuId>"} | Export-Csv -Encoding UTF8 "<エクスポート先ファイル名.csv>" -NoTypeInformation

 

こちらで指定したプランが割り当たっているすべてのユーザーのライセンスサービスの有効/無効状態の情報をエクスポートすることができます。

タイトルとURLをコピーしました