Имя пользователя по SID?

Как определить имя пользователя и домен, если у меня есть только SID пользователя?

4 ответа

Решение

ADFind может сделать это. Список опций здесь. Например, вы можете сделать что-то вроде этого, чтобы экспортировать список пользователей с их SID:

adfind -h domaincontroller01:389 -b "CN=Users,DC=domain,DC=com" -f "(objectClass=user)" objectSID displayName

Вы можете запустить ADFind из любого ящика, пока он не достигнет контроллера домена. Очевидно, что вы должны заменить domaincontroller01 на имя или IP-адрес контроллера домена и изменить "CN=Users,DC=domain,DC=com", чтобы отразить путь к нужным пользователям.

psgetsid от SysInternals PSTools сделаю это. Введите SID в командной строке, он даст вам имя пользователя / группы, и наоборот.

Запустите Windows PowerShell и запустите:

$strSID="S-1-5-21-500000003-1000000000-1000000003-1001"
$uSid = [ADSI]"LDAP://<SID=$strSID>"
echo $uSid

вывод должен выглядеть примерно так,

distinguishedName : {CN=John Doe,OU=Domain Admins,OU=People,OU=xxx,DC=xxx}
Path              : LDAP://<SID=S-1-5-21-500000003-1000000000-1000000003-1001>
  1. Открыть regedit (Windows-R regedit)
  2. Перейдите к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
  3. Нажмите на подразделы (что-то вроде S-1-5-19)
  4. Посмотрите на ProfileImagePath (это будет что-то вроде %SystemDrive%\Documents and Settings\LocalService).

Таким образом, в этом примере SID S-1-5-19 является LocalService

Другие вопросы по тегам