背景
自分のパスワードは、以下のクエリで変更することが可能です。
ALTER LOGIN [ログイン名] WITH PASSWORD = '新しいパスワードをここに' OLD_PASSWORD = '今のパスワードをここに';
ただ、検証時に何度か連続でパスワードの変更を実施したところ以下のエラーが発生しました。
「パスワードの検証に失敗しました。このユーザーのパスワードは最近変更したばかりです。」
このエラーがでるとパスワードが更新できません。
この挙動について原因を調べてみました。
調査結果
DBが稼働しているサーバーにログインしてコマンドプロンプトを管理者として実行し、「rsop.msc」と入力して「ポリシーの結果セット」を開きます。
[Windowsの設定]-[セキュリティの設定]-[アカウントポリシー]-[パスワードのポリシー]と進むと、
「パスワードの変更禁止期間」が表示されます。
ソースGPOがDefault Domain Policyになっているため、パスワードのポリシーは、ドメインのグループポリシーで設定されていることが分かります。
最後にパスワード変更したタイミングから、ここで設定している日数(例えば3日)が経過するとパスワードの変更が可能となるようです。
ちなみに、日数が1日の場合は、24時間という意味で、2020/08/07 15:00にパスワードを変更した場合、次回変更可能となる日時は2020/08/08 15:00となります。
まとめ
パスワードを変更した際にでる「パスワードの検証に失敗しました。このユーザーのパスワードは最近変更したばかりです。」というエラーについて、関連している設定値「パスワードの変更禁止期間」を調べる方法について書きました。