Azure ADのPowerShell(v2)でMicrosoft365を操作(その2:コマンド集)

投稿者: | 2020年5月4日

Microsoft365(office365) の管理は通常はブラウザから管理ツールを使って行います。ユーザ登録やライセンスの許可などの場合は、多くのユーザアカウントで同じ作業の繰り返しとなります。
ここでは、Azure ADのPowerShellもVersion 2 (Graph 用 Azure Active Directory PowerShell)でcsvファイルを使いユーザの一括登録や設定を行うことができます。

Microsoft365へ接続

Microsoft365へ接続します。操作手順はこちらを参照ください。

ライセンス関連

ライセンスに関連するコマンドです。

目的 コマンド
ライセンスの種類 GetAzureADSubscribedSku | Select SkuPartNumber
ライセンスの種類と使用量 Get-AzureADSubscribedSku | Select -Property Sku*,ConsumedUnits -ExpandProperty PrepaidUnits
ライセンス付与されているユーザ一覧 Get-AzureAdUser | ForEach { $licensed=$False ; For ($i=0; $i -le ($_.AssignedLicenses | Measure).Count ; $i++) { If( [string]::IsNullOrEmpty( $_.AssignedLicenses[$i].SkuId ) -ne $True) { $licensed=$true } } ; If( $licensed -eq $true) { Write-Host $_.UserPrincipalName} }
ライセンス付与されていないユーザ一覧 Get-AzureAdUser | ForEach{ $licensed=$False ; For ($i=0; $i -le ($_.AssignedLicenses | Measure).Count ; $i++) { If( [string]::IsNullOrEmpty( $_.AssignedLicenses[$i].SkuId ) -ne $True) { $licensed=$true } } ; If( $licensed -eq $false) { Write-Host $_.UserPrincipalName} }
ユーザにライセンスを付与 # 型の定義
$license = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicense
$licenses = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicenses# $licenseに追加するライセンスのSKU IDを登録
$license.SkuId = ‘<SKU ID>’
$licenses.AddLicenses = $license# $licensesに削除するライセンスのSKU IDを登録
$licenses.RemoveLicenses = ‘<SKU ID>’

# ライセンスを割り当て
Set-AzureADUserLicense -ObjectId “<ユーザー名>” -AssignedLicenses $licenses

ユーザからライセンスをはく奪 $userUPN=”<user sign-in name (UPN)>”
$planName=”<license plan name from the list of license plans>”
$license = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicense
$licenses = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicenses
$license.SkuId = (Get-AzureADSubscribedSku | Where-Object -Property SkuPartNumber -Value $planName -EQ).SkuID
$licenses.AddLicenses = $license
Set-AzureADUserLicense -ObjectId $userUPN -AssignedLicenses $licenses
$Licenses.AddLicenses = @()
$Licenses.RemoveLicenses = (Get-AzureADSubscribedSku | Where-Object -Property SkuPartNumber -Value $planName -EQ).SkuID
Set-AzureADUserLicense -ObjectId $userUPN -AssignedLicenses $licenses

ドメイン関連

ドメインに関連するコマンドです。

目的 コマンド
ドメイン一覧 GetAzureADDomain

グループ関連

グループに関連するコマンドです。

目的 コマンド
グループ一覧 Get-AzureADGroup
グループ作成 New-AzureADGroup -DisplayName <グループ名> -MailEnabled $false -SecurityEnabled $true -MailNickName <メールニックネーム>

ユーザアカウント関連

ユーザアカウントに関連するコマンドです。

目的 コマンド
ユーザ一覧 Get-AzureADUser
ユーザ作成 $PasswordProfile=New-Object -TypeName Microsoft.Open.AzureAD.Model.PasswordProfile
$PasswordProfile.Password=”<user account password>”
New-AzureADUser -DisplayName “<display name>” -GivenName “<first name>” -SurName “<last name>” -UserPrincipalName <sign-in name> -UsageLocation <ISO 3166-1 alpha-2 country code> -MailNickName <mailbox name> -PasswordProfile $PasswordProfile -AccountEnabled $true
ユーザ削除 Remove-AzureADUser -ObjectID <sign-in name>
AAD(Azure AD Connect)で同期したユーザ
Get-AzureADUser |ft DisplayName,ImmutableId

次の操作

次回は、「Azure ADのPowerShell(v2)でPowerShellでMicrosoft365を操作(その3:ユーザの一括登録)」になります

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です