連載
» 2018年02月22日 05時00分 公開

Tech TIPS:Windowsの「net user」コマンドでユーザーアカウントをコマンドラインから管理する (1/2)

「net user」コマンドを利用すると、コマンドプロンプト上でユーザーアカウントの作成や削除、グループ属性やパスワードの変更などの操作が簡単に行える。ただしActive Directoryで拡張された属性は操作できないなど、いくらか制限もあるので注意が必要だ。

[打越浩幸, 島田広道,デジタルアドバンテージ]
「Tech TIPS」のインデックス

連載目次

対象OS:Windows 7/Windows 8.1/Windows 10/Windows Server 2008 R2/Windows Server 2012/Windows Server 2012 R2/Windows Server 2016


 Windows OSでユーザーアカウントを管理するには、ローカルなら[コンピューターの管理]、Active Directoryなら[Active Directory ユーザーとコンピューター]といったGUIベースの管理ツールを利用できる。

 しかしそれだけではなく、コマンドプロンプト上で「net user」というコマンドを利用することもできる。アカウントの作成/削除、設定内容の確認、有効/無効の変更、パスワードの設定といった簡単な操作なら、コマンドプロンプト上で行えば素早く作業できる。バッチファイルで一連の設定作業を自動化することも可能だ。

 ここでは、このnet userコマンドの使い方について、簡単にまとめておく。なお以下の操作を行う場合は、基本的には管理者権限のあるアカウントでサインインした上で、管理者権限のあるコマンドプロンプトを開いて実行する必要がある。さもないと、権限の問題で幾つかのアカウント情報が表示されなかったり、操作できなかったりする。

net userコマンドのヘルプ

 net userコマンドの使い方は、「net user /?」コマンドで短い形式のものが、「net user /help」もしくは「net help user」で長い形式のものが表示できる。このコマンドで実行できる主な操作としては、次のようなものがある。

  • アカウント情報の確認
  • アカウントの作成/削除
  • 所属グループの確認/変更
  • パスワードの変更
  • コメント(アカウントの説明)やフルネーム、ユーザープロファイルパス、ログイン可能時間などの確認/設定
  • ロックアウトされているアカウントの再アクティブ化
net userコマンドのヘルプ net userコマンドのヘルプ
「net 〜」コマンドには長短2種類のヘルプがある。「net user /?」だと短いヘルプしか表示されず、分かりづらいかもしれない。長いヘルプは「net user /help」か「net help user」で表示される。

ユーザーアカウントの一覧と詳細の確認――net user

 ローカルのコンピュータ上に登録されているユーザーアカウントの一覧を確認するには、「net user」コマンドを実行する。Active Directoryに参加している場合は、「/domain」オプションを付けて「net user /domain」とすると、Active Directoryドメインのユーザーアカウントの一覧を確認できる。

ユーザーアカウントの一覧の確認 ユーザーアカウントの一覧の確認
オプションなしで「net user」を実行すると、ローカルのユーザーアカウント一覧が表示される。ドメインアカウントの一覧を表示させるには/domainオプションを付ける。

 それぞれのアカウントの詳細情報を確認したければ、「net user <アカウント名>」や「net user <アカウント名> /domain」を実行する。

ユーザーアカウントの詳細の確認 ユーザーアカウントの詳細の確認
「net user」コマンドにユーザー名を指定すると、そのアカウントの詳細情報が表示される。

 現在自分がどのアカウントでサインインしているかは、例えば「set user」コマンドで環境変数を表示させると簡単に確認できる。「USERDOMAIN=<ドメイン名>」となっていればActive Directoryドメインのアカウント、「USERDOMAIN=<ローカルコンピュータ>」となっていればローカルのユーザーアカウントでそれぞれサインインしている。ユーザー名は「USERNAME=<ユーザー名>」である。

現在サインイン中のアカウントの確認 現在サインイン中のアカウントの確認
現在サインインしているアカウント名や種類は、環境変数USERDOMANやUSERNAMEで知ることができる。

 この「USERNAME=〜」のアカウントを指定してnet userコマンドを実行すると、自分のアカウントの情報を確認できる。

アカウントの作成/削除――net user /add

 新しいユーザーアカウントを作成するには、「net user <アカウント名> /add」を実行する。デフォルトではローカルコンピュータ上に、パスワードなしのローカルユーザーアカウントを作成する。

ユーザーアカウントの追加 ユーザーアカウントの追加
新しいユーザーアカウントを作成するには、アカウント名を付けて/addするだけなので簡単だ。パスワードや所属グループ、フルネームなどの属性は、さらにnet userコマンドで順次設定する。

 このコマンドを実行すると、「パスワードはパスワード ポリシーの要件を満たしていません。〜〜」というエラーが出ることがある。その場合は、「net user <アカウント名> <パスワード> /add」のようにして、適当な初期パスワード文字列も同時に指定すること。後述の/randomオプションを使ってもよい。

 作成したアカウントは、デフォルトではローカルコンピュータ上の「Users」グループに属する一般権限のユーザーアカウント(ローカルアカウント)となる。管理者グループ(Administratorsグループ)のアカウントを作成したい場合は、この方法でアカウントを作成した後、後述するグループの追加コマンドを使って、Administratorsグループに所属させる。

 ドメインアカウントを作成したければ、さらにオプションとして「/domain」を付ける。この/domainオプションは、/add以外でも、ドメインアカウントを操作・参照する際には必ず指定する(ドメインコントローラ上で操作している場合だけは指定不要)。

 既存のユーザーアカウントを削除するには、「net user <アカウント名> /delete」とする。

ユーザーアカウントの削除 ユーザーアカウントの削除
アカウント名と/deleteを指定するだけで簡単に削除できる。ただし、システムのプロパティ画面画面からアカウントを削除する場合と違って、ユーザープロファイル(C:\Users\users01など)は自動で削除されないので、必要なら手動で削除すること。

ユーザーアカウントのパスワードの変更

 ユーザーアカウントのパスワードを変更するには、「net user <アカウント名> <パスワード>」を実行する。([Ctrl]+[Alt]+[Del]キーなどで表示される)GUIのパスワード変更画面と違って、元のパスワードを入力しなくても新しいパスワードを設定できる。

 ただしこの操作を行うには、管理者権限でコマンドプロンプトを開いて実行する必要がある。一般ユーザーが自分のパスワードを変更する場合でも、管理者権限のあるコマンドプロンプトを開いて操作しなければならないので注意したい。

 ところで、このような設定方法ではパスワードがコマンドプロンプトの履歴に残るし、コンソールの背後から他人に見られてしまうかもしれない。これを避けるには、パスワードをインタラクティブに入力させるとよい。

 そのためには、「<パスワード>」の代わりに「*」を指定する。こうすると、パスワードを入力するプロンプトが表示され、2回同じパスワードを入力すると、パスワードが変更される。

net userコマンドでパスワードを設定する net userコマンドでパスワードを設定する
パスワードを設定するには、直接引数として指定するか、「*」を指定して、インタラクティブに入力させる。

 ここで指定するパスワードは、システムで決められているパスワードの要件に合致している必要がある。そうでなければエラーとなり、設定できない。パスワードの要件ポリシー(最低文字数など)は「net accounts」コマンドやグループポリシー、ローカルセキュリティポリシーなどで確認できる。

 パスワード文字列の代わりに「/random」オプションを付けると、英数字と記号を組み合わせた、長さ8文字のランダムなパスワードが自動的に設定される(TIPS「安全性の高いランダムなパスワードを生成し、パスワードを変更する」参照)。アカウント作成直後の初期パスワードとしてこれを使い(作成したアカウント名と共にユーザーに通知する)、最終的なパスワードは後からユーザー自身で設定してもらう、といった使い方をするとよいだろう。

 ランダムなパスワードを自動生成させる ランダムなパスワードを自動生成させる
/randomオプションを付けるとランダムなパスワードが設定される。初期パスワードをこれで作成すると簡単だ。

       1|2 次のページへ

Copyright© 1999-2018 Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。