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

投稿者: | 2020年5月4日

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

Microsoft365へ接続

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

ライセンス関連

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

目的 コマンド
ライセンスの種類 Get-AzureADSubscribedSku | 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 -all $true
グループ作成 New-AzureADGroup -DisplayName <グループ名> -MailEnabled $false -SecurityEnabled $true -MailNickName <メールニックネーム>

ユーザアカウント関連

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

目的 コマンド
ユーザ一覧 Get-AzureADUser -all $true | Format-Table -AutoSize -Wrap
ユーザ一覧(csv出力) Get-AzureADUser -all $true | Export-csv -NoTypeInformation -Encoding UTF8 c:\temp\aadusers.csv
ユーザ一覧(情報選択) Get-AzureADUser -all $true | Select-Object UserPrincipalName,DisplayName,Mail,Country,UserType
ユーザ一覧(ゲスト) Get-AzureADUser -Filter “UserType eq ‘Guest'” | Select-Object Mail,DisplayName,UserPrincipalName | Format-Table -AutoSize -Wrap
ユーザ作成 $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:ユーザの一括登録)」になります

コメントを残す

メールアドレスが公開されることはありません。