質問: ### 前提・実現したいこと ローカルユーザーのパスワードを変更するバッチを作成したのですが、実効すると指定したユーザーのパスワードが無くなってしまいます。 この事象の原因究明と対策を行いたいです。 ### 発生している問題・エラーメッセージ バッチの実行自体、エラーが発生していません。 net user <対象ユーザー> でユーザーのパスワード更新履歴を確認すると変更された形跡があります。 パスワードが消えたというのは、変更予定のパスワードでもログインできず、変更前のパスワードでもログインできない状態のことを指しています。 バッチは管理者権限のあるユーザーで「管理者として実行」で実行しています。 ### 該当のソースコード net user ### 試したこと コマンドをコマンドプロンプトで直打ちすると正常にパスワードが変更できます。 対象のユーザーを一度再作成しバッチを実行すると、変わらずパスワードが消えます。 別のユーザーを作成しそのユーザーを指定しバッチを実行しましたが、事象改善ならず。 ### 補足情報(FW/ツールのバージョンなど) このバッチは以前、問題なく実行に成功していました。 また、このバッチはGPOのログインスクリプトに設定しております。 以前のバッチの実行は、ローカルでの実行もログインスクリプトでの実行も問題ありませんでした。 現在は両方失敗します。 もし、失敗するようになったタイミングがあるとしたら別のログインスクリプトを設定してからだと考えています。 そのログインスクリプトはあるユーザーを作成するという内容のバッチです。 そのユーザーのパスワードは、MACアドレスの下4桁をこちらの指定したワードにくっつけて、それを設定しています。 以下にソースを貼り付けます。 ``` @echo off set Target_ID="Wi-Fi" FOR /F "usebackq delims=, tokens=*" %%a in (`getmac /v ^| find %Target_ID%`) do @set Data=%%a( set Data_02=%Data:~32,17% ) set mac=%Data_02:-=% set macu4=%mac:~-4% set Pass=%macu4%! set LUser="" net user %LUser% %Pass% /add wmic UserAccount where Name=%LUser% set PasswordExpires=False net localgroup Administrators %LUser% /add net localgroup Users %LUser% /delete ``` 今回問題となったバッチと上記バッチが何かバッティングを起こしている可能性があると考え、以下の検証を実施いたしました。 MACアドレスのバッチをOUから外す。 →問題のバッチで事象改善せず 新規でドメインに参加したPCでバッチ実行(MACバッチは外し済み) →事象改善せず 全く事象の原因がつかめずここに質問させていただきました。 お手数ですが、ぜひご回答よろしくお願いいたします。
回答: 今回、このスクリプトの実装は一旦見送ることにしました。 回答いただいた皆様申し訳ございません。