某所の課題で「事前に作成しておいたローカルユーザーを、普段は無効にしておいて、特定のタイミングで有効化したい。リモートで半自動化するからコマンドで。」という要望があったので、さらっと調べてみました。
環境
- Windows Server 2016
※とはいえ、後述のコマンド (net user) は、たいていの Windows OS では動作するハズです。
net コマンドでやる
net コマンドの user コンテキストで、さらっとできます。
> net user test01
ユーザー名 test01
...
アカウント有効 No
...
コマンドは正常に終了しました。
> net user test01 /active:yes
コマンドは正常に終了しました。
> net user test01
ユーザー名 test01
...
アカウント有効 Yes
...
コマンドは正常に終了しました。
#ところで、net コマンドの公式リファレンスを探したけど、全然情報が見つからなかった…
PowerShell でやる
PowerShell だと、Enable-LocalUser コマンドレットでできました。
> Get-LocalUser -name test01
Name Enabled Description
---- ------- -----------
test01 False
> Enable-LocalUser -Name test01
> Get-LocalUser -name test01
Name Enabled Description
---- ------- -----------
test01 True
なお、上記の通り、ローカルユーザーの情報取得は Get-LocalUser コマンドレットで実施できます