ユーザーのパスワードを一括で変更する方法です。
アカウント作成時に初期パスワードをまとめて設定する場合に手作業で一人一人対応すると時間がかかるため、Powershellで一括変更するのが便利です。
Azure ADに接続
Azure Active Directory PowerShellモジュールを使用します。
まずはPowerShellを起動してAzure ADに接続します。
接続方法についてはこちらをご覧ください。
CSVファイルを準備
パスワードを変更するユーザの一覧をCSV形式で準備します。
UserPrincipalName, NewPassword
user1@example.com, N1lo90de
user2@example.com, k9er6Hg2
user3@example.com, 9dU2HJ2s
CSVファイルはUTF-8形式で保存してください。
※Excelで作成して、保存する時に「CSV UTF-8(コンマ区切り)(*.csv)」を選択
PowerShellコマンドの実行
下記の構文を環境に合わせて書き換えてください。
Import-Csv -Path “CSVファイルパス” | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $False;}
Import-Csv -Path "CSVファイルパス" | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $False;}
例えばCSVファイルをCドライブのTempフォルダに「UserPassword.csv」というファイル名で保存した場合
Import-Csv -Path “C:\temp\UserPassword.csv” | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $False;}
Import-Csv -Path "C:\temp\UserPassword.csv" | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $False;}
UserPrincipalNameが合致するユーザーのPasswordを変更します。
パスワードの強制変更
初期パスワードのままアカウントを使わせるのはセキュリティ上、良くないので初回ログインの時にパスワードを強制的に変更させたい場合があります。
その時は「ForceChangePassword」パラメータを「$True」にして実行してください。
Import-Csv -Path “C:\temp\UserPassword.csv” | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $True;}
Import-Csv -Path "C:\temp\UserPassword.csv" | ForEach-Object {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.NewPassword -ForceChangePassword $True;}