2009年6月20日土曜日

Windows コマンドラインから 「パスワードを無期限にする」を有効にする

何を言わんか、判る人にはわかるだろう。 net user コマンドにはこの機能がないのだ。
 

先日とある切欠で wmic の存在を思い出し、記事タイトルのことが出来るのかやってみた。
WMICodeCreator でWMIの中身をチェック、Win32_UserAccount の PasswordExpires を更新すればよい ことはわかっているので、WSHからは既にやっていたんだが、wmic を使えばコマンド1行でOKなのがいい。
 

wmic では Win32_UserAccount のエイリアスは useraccount だ。
なのでコマンドはこうなる。
 

wmic useraccount where (Name = "hogehoge") set PasswordExpires=False
 
 


では、コンピュータ名 "TESTPC" で ユーザー "hogehoge" のアカウントプロパティ「パスワードを無期限にする」にチェックを入れてみよう。
 

C:\>wmic useraccount where (Name = "hogehoge") set PasswordExpires=False
'\\TESTPC\ROOT\CIMV2:Win32_UserAccount.Domain="TESTPC",Name="hogehoge"' のプロパティを更新しています
プロパティは正しく更新されました。

 

C:\>wmic useraccount where (Name = "hogehoge") get PasswordExpires
PasswordExpires
FALSE

 

はいオッケィ。
これで、ユーザ管理画面を開かずにユーザ作成、グループに追加、パスワード無期限 をコマンドラインだけで出来て、あの面倒な「コンピュータの管理」を開かないで済むのだ。