Windows 11/10 で任意のユーザーのセキュリティ識別子 (SID) を見つける方法

シドまたはセキュリティ識別子は、Windows オペレーティング システム全体でユーザー、グループ、およびコンピューター アカウントを識別するのに役立つ一意のコードです。これらはユーザー アカウントが作成されるとすぐに作成され、一意の識別子であるため、一般的なコンピューター上では 2 つの SID が同じになることはありません。とも呼ばれます。セキュリティID。この一意の識別は、個人、お父さんなどの設定した名前を表示する代わりに、オペレーティング システムの内部で使用されます。これは、表示名を変更した場合でも、すべての設定が SID に関連付けられているため、そのアカウントに事前に設定されているものには影響せず、表示名やユーザー名を変更しても SID は一定のままであることも意味します。

すべてのユーザー アカウントは変更不可能な英数字文字列に関連付けられているため、SID はシステムにとって非常に重要です。ユーザー名を変更しても、システム リソースへのユーザーのアクセスには影響しません。ユーザー名を削除した後、誰かが古いユーザー名でアカウントを作成しようとした場合、SID は常に変更されているため、リソースへのアクセスを取り戻すことは不可能です。すべてのユーザー名に一意であり、この場合は同じではありません。

Windows 11/10 で任意のユーザーのセキュリティ識別子 (SID) を検索する

Windows 11/10 で任意のユーザーのセキュリティ識別子 (SID) を見つける方法を見てみましょう。

1] WMICの使用

ユーザーの検索SID またはセキュリティ識別子とても簡単です。これを行うには、Windows Management Instrumentation コマンド ライン (WMIC) を使用する必要があります。

したがって、まずコマンド プロンプトを開くことから始めます。これを行うには、次のように検索しますコマンドプロンプトCortana 検索ボックスで。または、Windows 8 以降を使用している場合は、ウィンキー+Xボタンの組み合わせでスタート ボタンのコンテキスト メニューを起動し、コマンド プロンプト (管理者)。

ここで、次のコマンドを入力します。

wmic useraccount get name,sid

そして、入力鍵。

これで、以下の画面スニペットのような結果が得られます。同じ SID を持つユーザー アカウントを取得します。

目的のユーザーの SID をフィルターで除外する

SQL クエリを使用することに慣れている読者は、これに関連するかもしれません。ただし、このコマンドを使用すると、ユーザーは特定のユーザーの SID を取得し、面倒な作業をすべて無視できます。これは、大規模なシステム (サーバーなど) に複数のユーザーがログインして同時に使用する場合に最も役立ち、このコマンドにより時間を大幅に節約できます。ただし、これはユーザーのユーザー名がわかっている場合にのみ機能します。

さて、使用するコマンドは-

wmic useraccount where name="USER" get sid

ここで、上記のコマンドの引用符内の USER を実際のユーザー名に置き換える必要があります。

たとえば、次のようになります-

wmic useraccount where name="Ayush" get sid

上記のコマンドの使用中にエラーが発生した場合は、パスを次のように変更してみてください。C:\Windows|System32|wbemの代わりにC:\Windows\システム32\

上記のコマンドの結果は次のようになります。

2] Whoamiを使用する

コマンド プロンプトまたは PowerShell を使用して現在のユーザーの SID を検索する

PowerShell/CMD ウィンドウを開き、次のコマンドを入力します。

whoami/user

Enterを押します。

現在のユーザーの SID を見つけるもう 1 つの方法は、次のコマンドを使用することです。wmic ユーザーアカウント以下のように

PowerShell/CMD ウィンドウを開き、次のコマンドを入力します。

wmic useraccount where name='%username%' get domain,name,sid

Enterを押します。

コマンド プロンプトまたは PowerShell を使用してすべてのユーザーの SID を検索する

コマンド プロンプト/PowerShell ウィンドウを開き、次のコマンドを入力します。

wmic useraccount get domain,name,sid

Enterを押します。

コマンドプロンプトまたはPowerShellを使用して特定のユーザーのSIDを検索する

コマンド プロンプト/PowerShell を開き、次のコマンドを入力します。

wmic useraccount where name='username' get sid

を与える本名上記のコマンドのユーザー名の代わりにユーザーの名前を入力します。

Enterを押します。

コマンド プロンプトまたは PowerShell を使用して SID のユーザー名を検索する

コマンド プロンプト/PowerShell を開き、次のコマンドを入力します。

wmic useraccount where sid='<sid>' get domain,name

を与える実際のSID値の代わりに<sid>上記のコマンドで。

Enterを押します。

3] PowerShellを使用する

すべてのユーザーの SID を見つける別の方法は、次のコマンドを使用することです。Get-WmiObjectPowerShell で。

PowerShell を開き、次のコマンドを入力します。

Get-WmiObject win32_useraccount | Select domain,name,sid

Enterを押します。

4] レジストリエディタの使用

ここでは、まずレジストリ エディターを開きます。 Cortana の検索ボックスで検索するか、単にヒットすることで実行できます。ウィンキー+R起動と入力の組み合わせ登録編集そして殴る入力。

レジストリ エディタを開いたら、次のパスに移動します。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

さて、内部では、プロフィール画像パスフォルダー内の各 SID の値プロフィールリストをクリックすると、目的の SID やユーザー名などの詳細が表示されます。このページは、以下の画面スニペットのようになります。

すでにコンピュータにログインしているユーザーの SID を見つけることができることは注目に値します。ユーザーは自分のアカウントにリモートでアクセスするか、アカウントにログインしてから、このアクティビティが実行されているアカウントの別のユーザーに切り替える必要があります。これがこの方法の唯一の欠点ですが、WMIC を使用する方法 1 ではまったく問題ありません。

SID の識別

次の形式の SIDS-1-0-0は Null SID と呼ばれます。 SID の値が不明な場合、またはメンバーが存在しないグループに割り当てられている場合は、SID に割り当てられます。

また、次の形式の SIDS-1-1-0はワールド SID です。ユーザーごとのグループに割り当てられます。

最後に、次の形式の SIDS-1-2-0はローカル SID と呼ばれます。ローカル端末からログインすることを想定したユーザーに割り当てられます。

これらのシステム識別子の詳細については、こちらをご覧ください。ここMicrosoft Developer Network 上で。

Pavithra Bhat からの意見をもとに