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 |
ドメイン関連
ドメインに関連するコマンドです。
目的 | コマンド |
ドメイン一覧 | Get–AzureADDomain |
グループ関連
グループに関連するコマンドです。
目的 | コマンド |
グループ一覧 | 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>” |
ユーザ削除 | Remove-AzureADUser -ObjectID <sign-in name> |
AAD(Azure AD Connect)で同期したユーザ |
Get-AzureADUser |ft DisplayName,ImmutableId
|
次の操作
次回は、「Azure ADのPowerShell(v2)でPowerShellでMicrosoft365を操作(その3:ユーザの一括登録)」になります