Windowsのコマンドラインツール「WMIC」でユーザーアカウントを効率的に管理する方法を紹介します。
現在のWindows:WMICではなくCIMで一覧を確認
WMICは廃止済みです。Microsoftは2026年8月以降のWindows 11 24H2・25H2で削除され、追加機能として戻せないと案内しています。WMI自体は引き続き利用できます。次はPowerShellでローカルアカウントだけを読み取る例です。
Get-CimInstance -ClassName Win32_UserAccount -Filter "LocalAccount=True" |
Select-Object Name, Domain, SID, Disabled
DisabledがTrueなら無効、Falseなら無効化されていない状態です。StatusのOKと同じ意味ではありません。名前だけでなくDomain・SIDで対象を確認します。この一覧はMicrosoft Entra IDを含むすべてのクラウド利用者一覧ではありません。以下のWMIC例はツールが残る旧環境向けです。
WMICとは?
Windows Management Instrumentation Command-line (WMIC)は、Windowsの管理情報にアクセスし、それを操作するための強力なコマンドラインツールです。システムの設定情報の取得、OSやアプリケーションのインストール状況の確認、ユーザーアカウントの管理など、さまざまな管理作業をコマンド一つで実行できます。このツールは、システム管理者やITプロフェッショナルにとって、Windows環境における日々の運用を効率化するための強力なアセットとなります。
WMICを使用することで、GUIを介さずに迅速にシステム情報を取得したり、複数のシステムに対して一括で設定変更を行うことが可能です。また、スクリプト内でWMICコマンドを利用することにより、自動化された管理タスクを作成することもでき、大規模な環境における管理の効率化に寄与します。
WMICは、WMI (Windows Management Instrumentation)に基づいて動作します。WMIは、Windowsオペレーティングシステムの管理情報と操作をプログラム可能にするためのインフラストラクチャであり、WMICはその強力なインターフェースを提供します。コマンドラインから直接、またはスクリプトを通じてWMIの機能を利用できるため、システム管理の自動化に非常に有効です。
次のセクションでは、WMICを使用してユーザーアカウント情報を取得する基本的な方法を見ていきましょう。
ユーザーアカウント情報の取得
Windowsシステムに登録されているユーザーアカウントの一覧を取得することは、システム管理において基本的かつ重要な作業の一つです。WMICコマンドを使えば、この作業を簡単かつ迅速に行うことが可能です。以下では、WMICを使用してユーザーアカウントの情報を取得する方法について説明します。
まず、コマンドプロンプトを開き、以下のコマンドを入力します。
wmic useraccount where "LocalAccount=True" listこのコマンドは、ローカルアカウントに絞った一覧を表示します。表示される情報には、アカウント名、SID(セキュリティ識別子)、アカウントが有効かどうか、そしてその他の多くの詳細が含まれています。
特定の情報のみを取得したい場合は、getオプションを使用して必要なフィールドを指定できます。例えば、アカウント名とアカウントのステータスのみを表示するには、次のように入力します。
wmic useraccount where "LocalAccount=True" get name,domain,sid,disabledこれによりローカルアカウントの名前・ドメイン・SID・Disabledの真偽値を確認できます。Statusは一般状態の文字列であり、無効状態はDisabledプロパティで判断します。
また、特定のユーザーに関する詳細情報を取得することも可能です。例えば、where句を使用して特定のユーザー名を指定することで、そのユーザーの詳細情報を取得できます。
wmic useraccount where "LocalAccount=True and Name='ユーザー名'" get /allこのコマンドを使用すると、指定したユーザーに関する全ての情報が表示されます。これにより、特定のユーザーアカウントについての詳細な分析が可能になります。
WMICを使ったユーザーアカウント情報の取得は、システム管理の効率化に大きく貢献します。コマンドラインから直接アクセスできるため、GUIツールを起動して情報を確認するよりもはるかに迅速に作業を行うことができます。次のセクションでは、WMICを使用してユーザーアカウントを作成および削除する方法について詳しく見ていきます。
ユーザーアカウントの作成と削除は別コマンドで行う
Win32_UserAccountにはPasswordプロパティがなく、wmic useraccount createにnameとpasswordを渡す方法では作成できません。以下はドメインコントローラーではないPCのローカルアカウントを対象にした、管理権限がある担当者向けの例です。作成・削除は情報取得と異なり、実際のアカウントを変更します。
ローカルユーザーの作成
net user "新規ユーザー名" * /add
*を指定するとパスワードを対話入力できます。パスワードをコマンド行やスクリプトへ直書きしません。名前・用途・適用ポリシーを確認し、不要な管理者権限は付与しないでください。
削除前に対象を確認する
net user "対象ユーザー名"
削除はアクセス権・サービス・タスク・データ利用へ影響します。本人利用、依存関係、データ保全、代替の管理者アカウントを確認してから行います。同じ名前で再作成してもSIDは別になり、元の権利が自動復元されるわけではありません。
net user "対象ユーザー名" /delete
上記には/domainを付けていません。ADドメインやEntra IDの管理と混同しないでください。不要か不明な場合は削除せず管理者へ確認します。
パスワードやグループ所属の管理
パスワード変更やグループ所属の管理には、WMICとは別のnet user・net localgroupなどを使います。このセクションでは、それらの操作方法について詳しく見ていきましょう。
ユーザーパスワードの変更
ユーザーアカウントのパスワードを変更するには、次のコマンド構文を使用します。
net user "ユーザー名" *このコマンドはnet userコマンドを使用しており、WMICとは異なるコマンドですが、コマンドラインから直接ユーザーアカウントのパスワードを変更する際によく利用されます。管理者権限を持つコマンドプロンプトから実行する必要があります。
ユーザーをグループに追加する
特定のユーザーをグループに追加するには、net localgroupコマンドを使用します。以下のコマンド構文を参照してください。
net localgroup グループ名 ユーザー名 /add以下のAdministratorsへの追加は管理者権限を与える操作です。通常のアカウント作成に必須ではありません。承認された対象だけに限定し、グループ名や対象のローカル/ドメインを確認します。
net localgroup Administrators ユーザー名 /addユーザーをグループから削除する
逆に、ユーザーをグループから削除する場合は、以下のコマンド構文を使用します。
net localgroup グループ名 ユーザー名 /deleteこのコマンドで、指定したユーザーを特定のグループから削除できます。管理作業を行う際は、操作の影響を十分に理解し、必要な場合は事前にバックアップを取るなどの対策を講じることが重要です。
注意点
- WMICや
net user、net localgroupコマンドを使用する際は、管理者権限を持つコマンドプロンプトから実行してください。 - システムへの影響を考慮し、特にパスワード変更やグループ管理の操作は慎重に行ってください。
コマンドラインツールを使ったユーザーアカウント管理は、効率的で柔軟な操作が可能です。WMICや関連するコマンドを適切に活用することで、システム管理の負担を軽減し、セキュリティの向上にも寄与します。次のセクションでは、これまでに紹介した技術を応用した実践的な管理タスクの例をいくつか紹介します。
実践的な応用例

WMICを使ったユーザーアカウント管理では、日々の管理作業を大幅に効率化できます。ここでは、WMICを活用した実践的な管理タスクの例をいくつか紹介します。
システム上の全ユーザーアカウントの詳細情報の取得
WMICを使用して、システムに存在する全てのユーザーアカウントの詳細情報を一度に取得することができます。以下のコマンドは、それぞれのユーザーアカウントについて、ユーザー名、フルネーム、アカウントの状態を表示します。
wmic useraccount where "LocalAccount=True" get name,fullname,disabledこのコマンドは、ユーザーアカウントの監査や文書化に特に役立ちます。
特定の条件を満たすユーザーアカウントの検索
WMICを使用して、特定の条件を満たすユーザーアカウントを検索することもできます。たとえば、Disabled状態のアカウントをすべてリストアップするには、次のようなコマンドを使用します。
wmic useraccount where "LocalAccount=True and Disabled=True" get name,domain,sidこのようなクエリは、不要なアカウントを特定して整理する際に便利です。
ローカルユーザーアカウントのバルク作成
WMIC useraccountのCREATEを一括実行する方法は使いません。必要な場合は、対応するローカルアカウント管理コマンドを選び、対象リスト・重複・権限・失敗時の記録を少数の検証環境で確認します。共通パスワードの一括付与を運用例にしないでください。
パスワードポリシーの適用
組織のパスワードポリシーは適用元で管理します。WMICにパスワード値を設定するプロパティはありません。管理者によるパスワードのリセットは暗号化データや保存済み資格情報へ影響する場合があるため、本人の通常変更と区別して事前に確認します。
これらの応用例は、WMICの強力な機能を活かして、Windows環境におけるユーザーアカウント管理をより効率的に行う方法を示しています。
まとめ:情報取得とアカウント変更を分ける
現在のWindowsではGet-CimInstanceなどへ移行し、WMIC例は旧環境に限って参照します。情報取得にはName・Domain・SID・Disabledを使い、作成やパスワード変更には対応する別コマンドを選びます。
WMICの活用により、GUIを必要とする複雑な操作をコマンドラインから簡単に実行できるようになり、日々の管理作業の効率化が可能です。これらの知識を活用して、Windows環境の管理をよりスムーズに、そして効率的に行っていきましょう。


コメント