パスワードポリシーにて有効期限が設定されているActive Directoryドメインサービス(以降、AD)環境において、一部ユーザーに対してパスワードを無期限に変更したいケースがありました。
本記事では、特定のOUに所属するユーザーの「パスワードを無期限にする」にチェックを入れるWindows PowerShell(以降、PowerShell)コマンドレットについて記載します。
事前準備
コマンドレットを実行する端末にPowerShell用のADモジュールがインストールされている必要があります。
以下はADモジュールインストールの参考URLになります。
PowerShellコマンドレット
ADモジュールインストール済みの端末でPowerShellを管理者権限で起動し、以下のコマンドレットを実行します。
※ XXX箇所はパスワードを無期限にしたいユーザーが所属するドメインやOUの情報を記載してください。
Get-ADUser -Filter * -SearchBase "OU=XXX,DC=XXX,DC=XXX" |
Set-ADUser -PasswordNeverExpires $true
コマンドレット実行後、「パスワードを無期限にする」にチェックが入ります。
※ パスワードポリシーにて有効期限を設定していても、無期限になります。

なお、上記コマンドレットは子OUも含まれます。子OUを含めない場合は「-SearchScope OneLevel」を追加します。
Get-ADUser -Filter * -SearchBase "OU=XXX,DC=XXX,DC=XXX" -SearchScope OneLevel |
Set-ADUser -PasswordNeverExpires $true
「パスワードを無期限にする」のチェックを外す場合は、「$true」の記載を「$false」に変更します。
Get-ADUser -Filter * -SearchBase "OU=XXX,DC=XXX,DC=XXX" |
Set-ADUser -PasswordNeverExpires $false
終わりに
本記事では、「パスワードを無期限にする」にチェックを入れるコマンドレットについて記載しました。
特定のユーザーのみ無期限にする場合に便利です。ぜひ参考にしてみてください。