http://pcsupport.about.com/od/registry/ht/find-user-security-identifier.htm
By Tim Fisher, About.com Guide
There are many reasons why you might want to find thesecurity identifier (SID) for a particular user's account in Windows but in my corner of the world, the common reason for doing so is to determine which key underHKEY_USERS in theWindows Registry to look for user-specific registry data for.
Regardless of the reason for your need, matching SIDs to user names is really easy thanks to the wmic command, acommand available from theCommand Prompt in most versions of Windows.
Follow these easy steps to display a table of user names and their corresponding SIDs:
Note: See Tip #1 for instructions on matching a user name to an SID via the Windows Registry, an alternative to the wmic command method described below. The wmic command didn't exist before Windows XP so you'll have to use the registry method in those older versions of Windows.
Here's How:
-
Open Command Prompt.
-
Once Command Prompt is open, type the following command exactly as shown here, including spaces or lack thereof::(命令没用)
wmic useraccount get name,sid
and then press Enter.
-
You should see a table, similar to the following, displayed in the Command Prompt window
Name SID
Administrator S-1-5-21-1180699209-877415012-3182924384-500
Guest S-1-5-21-1180699209-877415012-3182924384-501
HomeGroupUser$ S-1-5-21-1180699209-877415012-3182924384-1002
Tim S-1-5-21-1180699209-877415012-3182924384-1004
UpdatusUser S-1-5-21-1180699209-877415012-3182924384-1007
This is a list of each user account in Windows, listed by user name, followed by the account's corresponding SID.
-
Now that you're confident that a particular user name corresponds to a particular SID, you can make whatever changes you need to in the registry or do whatever else you needed this information for.
Tips:
-
How To Find User's SIDs in the Registry:
You can also determine a user's SID by looking through theProfileImagePath values in each S-1-5-21 prefixed SID listed under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList key.
The ProfileImagePath value within each SID-named registry key lists the profile directory, which includes the user name.
For example, the ProfileImagePath value under theS-1-5-21-1180699209-877415012-3182924384-1004 key on my computer is C:\Users\Tim so I know that the SID for the user "Tim" is "S-1-5-21-1180699209-877415012-3182924384-1004".
Note: This method of matching users to SIDs will only show those users who are logged in or have logged in and switched users. To continue to use the registry method for determining other user's SIDs, you'll need to log in as each user on the system and repeat these steps. This is a big drawback so, assuming you're able, you're much better off using the wmic command method above.
example:
Ex: S-1-5-21-4512562456-1256505846-1569558059-500
The first character is always an S. It identifies it as a SID
The second number is the SID version.
The third number identifies the authority (5 is NT authority)
The forth set of numbers is the domain identifier, up to 500
The remainder is the account or group identifier.