ADドメインユーザのパスワード有効期限を延長する方法【Active Directory】

こんにちわ。ますのです。
リモートワークやらテレワークが流行っている昨今ですが、パスワード有効期限切れのユーザからの問い合わせが後を絶ちませんです。

先日、期限が7日前になったら毎日メールを通知するPowerShellを仕込みましたので緩和されていますが、それでもやはり変えない方は変えないのです。
関連記事:WindowsDefenderの無効化 or 通知のみ無効化する【グループポリシー編】

パスワードの有効期限、無期限にしてしまおうか
という強硬突破もやむ無しかと考えているところであります。

結論:「ユーザーは次回ログオン時にパスワード変更が必要」をオン⇒オフで変更可能

AD内のドメインユーザのパスワードは「pwdLastSet」という項目から、ポリシーで設定されている有効期限の日数を足して算出しているようです。

そのため、下図の「ユーザーは次回ログオン時にパスワード変更が必要」をオフ⇒オンにすることで「pwdLastSet」が再設定され、有効期限が延長される動きになります。

PowerShell:set-ADUserで「ChangePasswordAtLogon」を指定する

GUIでの設定は面倒なので、CLIでの設定が出来ないか確認したのでご紹介。

#[ユーザーは次回ログオン時にパスワード変更が必要]をオンにする
set-ADUser (ユーザ名) -ChangePasswordAtLogon $true

#[ユーザーは次回ログオン時にパスワード変更が必要]をオフにする
set-ADUser (ユーザ名) -ChangePasswordAtLogon $false
[set-ADUser (ユーザ名) -ChangePasswordAtLogon $true]を行った時点で「パスワード変更日時」が設定を行った時間帯に更新されます。

なお、[$true]を行った際にログインしているユーザーはパスワード期限が切れた状態となるため、AD連携を行って認証しているシステムがある場合は考慮が必要なので、その辺りは運用管理者の腕の見せ所です。

 

「pwdLastSet」を直接変更出来れば早いのでは??と思い調べたであります。
ですが、CLIで変更可能なものはあくまでもCLIで設定できる項目はADのユーザプロパティ画面で設定できる内容だけのようであります!
この辺の項目。

参考:Microsoft Doc【Set-ADUser】

あとはコマンドをimport-csvなりでリスト読み込みして出来れば一括で出来るかもですね!

その他にも、ADに備わっているPSO(Password Setting Object)を利用してうまいこと誤魔化して、やればユーザ影響無しでもいけそうな印象であります。
参考:【AD】パスワードポリシーはPSO(Password Setting Object) がオススメ|GPOとの比較

こちらはまた別途詳細確認して記事にする予定ですのでおつきあくださいませませ。

最新情報をチェックしよう!