今回は、Windows環境でユーザーアカウントを管理する際に欠かせない「net user」コマンドについて、基本的な使い方から実務での活用シーンまで詳しく解説します。
net userコマンドは、コマンドプロンプトから直接ユーザーアカウントの作成、削除、パスワード変更、アカウント情報の確認などを行える強力なツールです。GUIでの操作に比べて素早く処理でき、スクリプト化も可能なため、システム管理者にとって必須のスキルとなっています。
本記事では、基礎から丁寧に説明しつつ、実践的なテクニックやトラブルシューティングの方法もご紹介します。
net userコマンドとは
net userコマンドは、Windows標準搭載のコマンドラインツールで、ローカルコンピュータ上のユーザーアカウントを管理するために使用します。Windows Server環境だけでなく、Windows 10/11などのクライアントOSでも利用可能です。
主な機能
- ユーザーアカウントの一覧表示
- 新規ユーザーアカウントの作成
- 既存ユーザーのパスワード変更
- ユーザーアカウントの詳細情報確認
- アカウントの有効化/無効化
- パスワードポリシーの設定
- アカウントの削除
実行に必要な権限
net userコマンドでアカウント情報を閲覧するだけであれば一般ユーザー権限でも実行できますが、アカウントの作成・変更・削除には管理者権限が必要です。コマンドプロンプトを「管理者として実行」してから操作を行ってください。
基本的な使い方
ユーザーアカウント一覧の表示
最もシンプルな使い方として、現在のコンピュータに存在するユーザーアカウントの一覧を表示できます。
net user
実行すると、ローカルコンピュータに登録されているすべてのユーザーアカウント名が表示されます。これは一般ユーザー権限でも実行可能です。
特定ユーザーの詳細情報を表示
特定のユーザーアカウントについて、より詳しい情報を確認したい場合は、ユーザー名を指定します。
net user ユーザー名
例:
net user Administrator
このコマンドを実行すると、以下のような情報が表示されます:
- アカウント名
- フルネーム
- コメント
- ユーザーのコメント
- 国番号
- アカウントの有効状態
- アカウントの有効期限
- パスワードの最終変更日
- パスワードの有効期限
- パスワードの変更可能日
- パスワードが必要かどうか
- ユーザーによるパスワード変更の可否
- 許可されているワークステーション
- ログオンスクリプト
- ユーザープロファイル
- ホームディレクトリ
- 最終ログオン日時
- 所属グループ
新規ユーザーの作成
新しいユーザーアカウントを作成する場合は、以下の構文を使用します。
net user ユーザー名 パスワード /add
コマンド例:
net user testuser P@ssw0rd123 /add
この例では、「testuser」という名前のユーザーを「P@ssw0rd123」というパスワードで作成しています。
セキュリティ上の注意: コマンドラインでパスワードを指定すると、コマンド履歴に残ってしまうため、セキュリティリスクがあります。本番環境では、パスワードを省略して実行し、対話形式で入力する方法を推奨します。
net user testuser /add
このように実行すると、パスワードの入力を求められ、入力内容が画面に表示されないため安全です。
ユーザーのパスワード変更
既存ユーザーのパスワードを変更する場合は、以下のようにします。
net user ユーザー名 新しいパスワード
コマンド例:
net user testuser NewP@ssw0rd456
パスワードを対話形式で入力したい場合:
net user testuser *
アスタリスク(*)を指定すると、新しいパスワードの入力を求められます。
ユーザーアカウントの削除
不要になったユーザーアカウントを削除するには、/deleteオプションを使用します。
net user ユーザー名 /delete
コマンド例:
net user testuser /delete
重要な注意事項: アカウントを削除すると、そのユーザーのプロファイルやデータは残りますが、アカウント自体は完全に削除され、復元できません。削除前に必ず確認してください。
net userコマンドの主要オプション一覧
net userコマンドには、ユーザーアカウントを細かく制御するための多数のオプションがあります。以下、実務でよく使用されるオプションを表形式でまとめました。
| オプション | 説明 | 使用例 |
|---|---|---|
| /add | 新しいユーザーアカウントを作成 | net user username password /add |
| /delete | ユーザーアカウントを削除 | net user username /delete |
| /active:yes/no | アカウントの有効/無効を設定 | net user username /active:no |
| /comment:”テキスト” | ユーザーアカウントにコメントを追加 | net user username /comment:”経理部” |
| /fullname:”名前” | ユーザーのフルネームを設定 | net user username /fullname:”山田太郎” |
| /passwordchg:yes/no | ユーザーが自分でパスワードを変更できるかを設定 | net user username /passwordchg:no |
| /passwordreq:yes/no | パスワードが必須かどうかを設定 | net user username /passwordreq:yes |
| /expires:日付/never | アカウントの有効期限を設定 | net user username /expires:2024/12/31 |
| /times:時間 | ログオン可能な時間帯を設定 | net user username /times:Monday-Friday,9-17 |
| /logonpasswordchg:yes/no | 次回ログオン時のパスワード変更を強制 | net user username /logonpasswordchg:yes |
| /domain | ドメインコントローラー上でコマンドを実行 | net user username /domain |
| /homedir:パス | ユーザーのホームディレクトリを設定 | net user username /homedir:C:\Users\username |
| /profilepath:パス | ユーザープロファイルのパスを設定 | net user username /profilepath:C:\Profiles\username |
| /scriptpath:パス | ログオンスクリプトのパスを設定 | net user username /scriptpath:login.bat |
実務での活用シーン
ここでは、システム管理の現場でnet userコマンドがどのように活用されているか、具体的なシナリオをご紹介します。
シーン1: 一時的な作業用アカウントの作成
システムメンテナンスやトラブルシューティングのために、有効期限付きの一時アカウントを作成する場合:
net user tempworker TempP@ss123 /add /expires:2024/12/31 /comment:"メンテナンス用一時アカウント"
このコマンドで、2024年12月31日に自動的に無効になる一時アカウントを作成できます。作業完了後にアカウントを削除し忘れるリスクを軽減できます。
シーン2: セキュリティ強化のためのアカウント無効化
不正アクセスやセキュリティインシデントが発生した際、迅速にユーザーアカウントを無効化する必要があります:
net user suspicioususer /active:no
このコマンドは即座にアカウントを無効化しますが、データは保持されるため、後で調査や復元が可能です。
シーン3: 新入社員のアカウントを一括作成
複数の新入社員のアカウントを作成する際、バッチファイルと組み合わせて効率化できます:
@echo off
net user yamada.taro * /add /fullname:"山田太郎" /comment:"営業部" /passwordchg:yes
net user suzuki.hanako * /add /fullname:"鈴木花子" /comment:"経理部" /passwordchg:yes
net user tanaka.ichiro * /add /fullname:"田中一郎" /comment:"技術部" /passwordchg:yes
echo アカウント作成が完了しました。
pause
このバッチファイルを実行すると、各ユーザーのパスワードを順次入力でき、安全かつ効率的にアカウントを作成できます。
シーン4: パスワードポリシーの適用
セキュリティ要件に基づいて、特定ユーザーのパスワード設定を強化:
net user criticaluser NewP@ss456 /passwordchg:no /passwordreq:yes
このコマンドで、重要なアカウントのパスワードをユーザー自身が変更できないように制限し、パスワードを必須に設定できます。
シーン5: 夜間作業のための時間制限アカウント
夜間バッチ処理用のアカウントに、特定時間帯のみログオン可能な制限をかける:
net user batchuser BatchP@ss789 /add /times:Monday-Friday,22-6
このアカウントは平日の22時から翌朝6時までの間のみログオン可能となり、セキュリティリスクを低減できます。
シーン6: リモートコンピュータのアカウント確認
ネットワーク経由で別のコンピュータのユーザー情報を確認する場合:
net user username /domain
ドメイン環境では、/domainオプションを使用することで、ドメインコントローラー上のアカウント情報を取得できます。
よくあるエラーと対処法
net userコマンドを使用する際に遭遇しやすいエラーとその解決方法をご紹介します。
エラー1: 「アクセスが拒否されました」
エラーメッセージ:
システム エラー 5 が発生しました。
アクセスが拒否されました。
原因: 管理者権限なしでコマンドプロンプトを実行している場合に発生します。
対処法:
- スタートメニューから「コマンドプロンプト」を検索
- 右クリックして「管理者として実行」を選択
- UACプロンプトが表示されたら「はい」をクリック
- 再度コマンドを実行
エラー2: 「ユーザー名が見つかりませんでした」
エラーメッセージ:
ユーザー名が見つかりませんでした。
原因: 指定したユーザー名が存在しない、またはタイプミスがある場合に発生します。
対処法:
- まず
net userコマンドで存在するユーザー一覧を確認 - ユーザー名のスペルを確認(大文字小文字は区別されません)
- ドメインアカウントの場合は
/domainオプションを追加
エラー3: 「パスワードがパスワード ポリシーの要件を満たしていません」
エラーメッセージ:
システム エラー 2245 が発生しました。
パスワードは、パスワード ポリシーの要件を満たしていないため、更新されませんでした。
長さ、複雑さ、または履歴に関する要件を確認してください。
原因: 設定しようとしたパスワードがWindowsのパスワードポリシーを満たしていません。
対処法: パスワードは以下の要件を満たす必要があります:
- 最低文字数を満たす(通常は8文字以上)
- 複雑さの要件: 大文字、小文字、数字、記号のうち3種類以上を含む
- ユーザー名やアカウント名を含まない
- 過去のパスワードと異なる(履歴ポリシーが有効な場合)
例: P@ssw0rd123(大文字、小文字、数字、記号を含む)
エラー4: 「ユーザー アカウントは既に存在しています」
エラーメッセージ:
システム エラー 2224 が発生しました。
このユーザー アカウントは既に存在しています。
原因: 作成しようとしているユーザー名が既に使用されています。
対処法:
net userコマンドで既存ユーザーを確認- 別のユーザー名を使用する
- または既存ユーザーを削除してから再作成(推奨されません)
エラー5: 「指定されたパラメーターが正しくありません」
エラーメッセージ:
システム エラー 87 が発生しました。
パラメーターが間違っています。
原因: コマンドの構文が間違っている、またはオプションの指定方法が不適切です。
対処法:
- オプションは必ず「/」(スラッシュ)で始まることを確認
- 日付形式は「YYYY/MM/DD」または「MM/DD/YYYY」で指定
- コロン(:)と値の間にスペースを入れない
- ダブルクォーテーション(“)でスペースを含む値を囲む
正しい例:
net user testuser /expires:2024/12/31 /comment:"テストユーザー"
エラー6: ドメイン環境でのエラー
エラーメッセージ:
このコマンドを実行できるのは、Windows ドメイン コントローラーに対してだけです。
原因: ローカルコンピュータでドメインオプションを使用しようとした場合に発生します。
対処法:
- ローカルアカウントを操作する場合は
/domainオプションを削除 - ドメインアカウントを操作する場合はドメインコントローラーにログインするか、リモートデスクトップで接続
関連コマンドの紹介
net userコマンドと併せて使用すると便利な関連コマンドを簡単にご紹介します。
net localgroup
ローカルグループの管理を行うコマンドです。ユーザーを特定のグループに追加・削除する際に使用します。
net localgroup Administrators testuser /add
上記のコマンドで、testuserをAdministratorsグループに追加できます。
net accounts
パスワードポリシーやアカウントロックアウトポリシーを表示・設定するコマンドです。
net accounts
このコマンドで、パスワードの最小文字数、有効期限、ロックアウトポリシーなどを確認できます。
whoami
現在ログインしているユーザーの情報を確認するコマンドです。
whoami /user
ユーザー名とSID(セキュリティ識別子)を表示します。
query user
現在システムにログインしているユーザーのセッション情報を表示します。
query user
リモートデスクトップセッションの管理などで便利です。
まとめ
今回は、Windows環境でユーザーアカウント管理に欠かせないnet userコマンドについて、基本的な使い方から実務での活用方法、よくあるエラーへの対処法まで幅広く解説しました。
net userコマンドの主なポイント:
- 管理者権限での実行が基本(閲覧のみなら一般ユーザーでも可能)
- パスワードは対話形式での入力が安全
- オプションを活用することで細かなアカウント制御が可能
- バッチファイルと組み合わせることで作業の効率化が図れる
- エラーメッセージから原因を特定し、適切に対処することが重要
GUIでの操作に比べ、コマンドラインでのアカウント管理は最初は難しく感じるかもしれませんが、慣れてくると圧倒的に作業効率が向上します。特に複数のアカウントを一括で処理する場合や、リモートでの管理作業では、net userコマンドの習得は必須スキルと言えるでしょう。
ぜひ、テスト環境で実際にコマンドを試してみて、使い方に慣れていってください。本番環境での作業前には必ずバックアップを取り、影響範囲を十分に確認してから実行することをお勧めします。
今回の記事が、皆さんのWindows管理業務の効率化に少しでもお役に立てれば幸いです。

コメント