Entra ID 勉強会(SC-300)ユーザーライセンスの適用

Entra ID

問題

あなたの会社では全てのユーザーにM365 E3ライセンスが割り当てられています。

新しくM365 E5ライセンスを全てのユーザー分だけ購入したことに伴い、M365 E3からE5にライセンスの再割り当てをする必要があります。

M365管理センターでライセンスの割り当て直しを行うにあたり、最も簡単に作業を完了させる必要があります。

次のソリューションは最適ですか?

ソリューション:ユーザーのプロパティを開いてライセンスをE3からE5に再割り当てする。

 

A.はい
B.いいえ

回答

B.いいえ

解説

ライセンス割り当て可能なポータル

Entra ID管理センターでのライセンス割り当ては旧仕様であり、現在はM365管理センターでのみライセンス割り当て可能。

ライセンス割り当て方法

M365管理センター → 課金情報 → ライセンス → 対象のライセンスを選択し、「ライセンスの割り当て」を実行すると、最大20名までユーザーにライセンスを割り当てることができる。

 

PowerShellを使ったライセンス割り当て

管理ポータルを使わないやり方でライセンス割り当てをすることが可能。

割り当て対象ユーザーのUPNとCSVを使って、20名以上のユーザーに対する同時ライセンス割り当てが可能なため、
大規模なユーザーへの割り当てや、人事異動対応などでライセンスの付け替え作業などが発生する場合にスクリプト化しておくと便利。

<CSVのサンプル>

<PowerShellスクリプト>

# 認証用
Import-Module Microsoft.Graph.Authentication
# ライセンス情報取得用 (Get-MgSubscribedSku)
Import-Module Microsoft.Graph.Identity.DirectoryManagement
# ユーザー操作用 (Set-MgUserLicense)
Import-Module Microsoft.Graph.Users.Actions

# Graphに接続
Connect-MgGraph -Scopes "Organization.Read.All", "User.ReadWrite.All"

# CSVインポート
$csv = Import-Csv "CSVPATH\XXX.csv"

# テナント内の全ライセンス情報を取得
$allSkus = Get-MgSubscribedSku -All

# ループ処理(エラーハンドリングなし)
foreach ($eachline in $csv) {
    
    # CSVのSKU名と一致するライセンス情報を検索
    $targetSku = $allSkus | Where-Object { $_.SkuPartNumber -eq $eachline.licenseSKU }

    if ($targetSku) {
        Set-MgUserLicense -UserId $eachline.userPrincipalName -AddLicenses @(@{SkuId = $targetSku.SkuId}) -RemoveLicenses @()
    }
    else {
        Write-Host "SKU未検出: $($eachline.licenseSKU)" -ForegroundColor Yellow
    }
}

※ユーザーにライセンスを割り当てるときは、ユーザープロパティの「利用場所」が設定されている必要がある。

通常ポータルからユーザー作成した場合は反映されているが、PowerShellなどで作成したユーザーにはこの情報が設定されてないケースがある。

グループを使ったライセンス割り当て

Entra ID P1以上のライセンスがある場合はグループベースのライセンス割り当てが可能であり、大規模組織の場合はグループで管理されることが一般的である。

コメント