ボーカルリムーバーオンライン無料

Windowsについて詳しく解説します

レジストリキーのSIDからユーザーアカウントを識別する方法を解説

  • レジストリに格納されている「S-1-5-****」で始まるようなIDは何?
  • このSIDが、どのユーザアカウントを示しているのかを確認したい
  • 紐づけを確認する具体的な手順を教えて!

この記事では、以上の疑問にお答えします。

 

Windowsの設定値などをレジストリキーから調べる場合に、キーによってはユーザアカウントごとに独立した設定となっている場合があります。

そのユーザアカウントの数だけ、個別設定を格納しているレジストリキーが複数存在します。

 

特定のユーザアカウントのレジストリキーを調べようとしたときに困ることなのですが、レジストリ内ではユーザアカウントはSIDという個別のIDで表示されるようになっています。

そのSID自体は数値の羅列のため「このレジストリはどのユーザアカウントなのか?」というのが一目でわからない仕様になっているのですね。

そのSIDと実際のユーザアカウント名の紐づけがわかれば、どのSIDがどのユーザのレジストリキー設定なのかがわかるので、その紐づきの情報を調べてみました。

この記事では、SIDとユーザーアカウントを紐づける方法について解説しています。

 

  当記事の内容は、Windows11最新版(23H2 22631.3593)にて動作を確認しています。

 

この記事のポイント!

  • SIDはユーザごとにユニークなものが付与される
  • レジストリエディタでSIDとユーザの紐づけを確認可能
  • HKEY_USERS\[SID]からユーザごとの個別設定も確認・変更可能

SIDの実例

先ず実際のSIDですが、このような数列で記述されます。

S-1-5-21-3799544983-2651198241-1005135883-1001

 

上記の値がどのドメインのどのコンピュータのユーザアカウントなのかを示す個別のIDです。

このIDが他のユーザーアカウント一致することは基本的にありません。

新規ユーザアカウントを作り直しても、上記のSIDと一致するものではないようです。

つまり、完全にユニークなIDだということですね。

SIDとは

SIDとはセキュリティ識別子(Security Identifier)という名称で、ユーザやグループ、コンピュータなどを識別するためのIDです。

ここではユーザーアカウントでのSIDをご紹介していますが、それ以外にもユーザグループやコンピュータなどにも割り当てられます。

 

S-1-5-21-3799544983-2651198241-1005135883-1001

SIDは、以下のような形式で構成されています。

  • S: これはSIDであることを示す文字
  • 1: SIDのバージョン番号(通常は1)
  • 5: SIDの種類(5は通常のユーザーやグループ)
  • 21: 発行元機関を識別する番号
  • 3799544983-2651198241-1005135883: ドメインやコンピューターを識別するID
  • 1001: 個々のユーザーやグループのID

SIDとユーザーアカウントの紐づけを確認する方法

さて、SIDがどのユーザアカウントと紐づいているかどうかを確認するには、「Usersのフォルダのどこを指定しているか」を確認することで判別可能です。

具体的には、下記のレジストリキーを確認します。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\[sid]

 

Windows11でのレジストリエディタの起動方法はこちら

 

上記レジストリ内のProfileImagePathの値を確認すると、C:\Users\[ユーザ名という形で値が入力されています。

 

この[ユーザ名]部分が実際のユーザアカウントと紐づく部分となるわけですね。

 

 

  ちなみに、このレジストリキーですが、Windows XP, Vista, 7などでも、同様のパスにレジストリキーが保存されていることを確認しています。

 

ProfileImagePathの指定先はWindowsのバージョンによって異なり、例えばWindows XPだと、Document and Settingsフォルダ内のパスが指定されています。

2013-0401-223532

【参考】設定値の格納先

参考までに、ユーザごとの個別設定は、以下のレジストリキーの中に格納されています。

HKEY_USERS\[sid]

 

この中身には、例えば以下のようなレジストリ設定が入力されています。

必要に応じて、設定値を確認してみてください。

 

HKEY_USERS\[SID]\Software

ユーザーがインストールしたソフトウェアの設定

 

HKEY_USERS\[SID]\Control Panel

ユーザーのコントロールパネル設定(例:ディスプレイの設定、マウスの設定など)

 

HKEY_USERS\[SID]\Environment

ユーザーごとの環境変数の設定

 

HKEY_USERS\[SID]\Keyboard Layout

ユーザーが設定したキーボードレイアウトや言語設定

 

HKEY_USERS\[SID]\Network

ユーザーのネットワーク接続の設定(例:Wi-Fi設定、VPN設定など)

総括

以上、レジストリのSIDとユーザアカウントの紐づけを確認する方法でした。

 

この記事のポイント!

  • SIDはユーザごとにユニークなものが付与される
  • レジストリエディタでSIDとユーザの紐づけを確認可能
  • HKEY_USERS\[SID]からユーザごとの個別設定も確認・変更可能

 

SIDからユーザアカウントを認識する場面は少ないかもしれませんが、WindowsPCを扱う管理者の立場の場合、この紐づけ方法を知っておくと、何かと便利な場面があるかもしれません。

特に、Windowsの設定値がレジストリに格納されているかが、一発で確認できると便利ですよね。

数十台のWindowsPCなどを取り扱う場合には、このようにレジストリの値を自動的に取得することで、効率的に設定確認や変更などが可能そうです。

 

もちろんレジストリエディタでの操作になりますので、自己責任にて、色々、活用してみてください。

以上、ご参考までに。

それでは!