SIDからユーザ名を逆引きする

0018

イベントビューアを見ていると、たまにユーザ名ではなく、SIDで内容が表示されている事があります。
SIDってのは、コンピュータがユーザやコンピュータのオブジェクトを管理するために割り当てる一意のIDなんですけど、正直、このIDで表示してもらっても、どのアカウントの事を指しているのかさっぱり分からなかったりするわけです。

以下のスクリプトを実行する事で、SIDからユーザ名を逆引きする事が出来ます。

Option Explicit

Dim strComputer,strSID
Dim objWMIService,objAccount

'対象コンピュータ名("."の場合はローカルコンピュータを参照します)
strComputer = "."
'調べたいSIDを以下に入力
strSID      = "S-1-5-7"

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set objAccount = objWMIService.Get ("Win32_SID.SID='"& strSID & "'")

Wscript.Echo strSID & " → " & objAccount.ReferencedDomainName & "\" & objAccount.AccountName

Set objWMIService = Nothing
Set objAccount    = Nothing

参考URL

ユーザー アカウントの SID を調べるにはどうすればよいでしょうか。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です