Active Directory ドメインサービス(以降、AD)の複数のユーザーに対して、一括でパスワード変更を強制させたいケースがあるかと思います。
本記事では、特定のOUに所属するユーザーの「ユーザーは次回ログオン時にパスワード変更が必要」にチェックを入れるWindows PowerShell(以降、PowerShell)コマンドレットについて記載します。
事前準備
コマンドレットを実行する端末にPowerShell用のADモジュールがインストールされている必要があります。
PowerShellコマンドレット
ADモジュールがインストール済みの端末でPowerShellを管理者権限で起動し、以下のコマンドレットを実行します。
なお、XXX箇所はパスワード変更させるユーザーが所属するドメインやOUの情報を記載してください。
Get-ADUser -SearchBase "OU=XXX,DC=XXX,DC=XXX" -SearchScope Subtree -Filter * |
Set-ADUser -ChangePasswordAtLogon $true
コマンドレット実行後、「ユーザーは次回ログオン時にパスワード変更が必要」にチェックが入ります。

なお、上記のコマンドレットは子OUも含まれます。子OUを含めない場合は「Subtree」の記載を「OneLevel」に変更します。
>Get-ADUser -SearchBase "OU=XXX,DC=XXX,DC=XXX" -SearchScope OneLevel -Filter * |
Set-ADUser -ChangePasswordAtLogon $true
「ユーザーは次回ログオン時にパスワード変更が必要」のチェックを外す場合は、「$true」の記載を「$false」に変更します。
Get-ADUser -SearchBase "OU=XXX,DC=XXX,DC=XXX" -SearchScope OneLevel -Filter * |
Set-ADUser -ChangePasswordAtLogon $false
終わりに
本記事では、「ユーザーは次回ログオン時にパスワード変更が必要」のチェックを入れるコマンドレットについて記載しました。
パスワードを変更させたいユーザーが数多く存在する場合に便利だと思います。
ぜひ参考にしてみてください。