Как получить sid пользователя?

Добрый день уважаемые читатели, сегодня мы продолжим изучение Active Directory, а точнее его сущностей. Под сущностью понимается некий объект, в нашем случае это учетная запись пользователя, но их список куда больше. Наша сегодняшняя задача изучить как узнать sid пользователя windows в домене.

Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами установили домен Active Directory на Windows Server 2019. Одним из краеугольных понятий в AD является идентификатор безопасности компьютера SID, о нем и пойдет речь. Мы разберем, какие они бывают у сервера и рабочей станции, а так же научимся определять SID компьютера, буквально за минуту.

Add New Question

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Thanks for submitting a tip for review!

The steps below work the same in Windows 10 and 11.

Find the SID of a Specific User

I hope this simple and easy Windows how-to guide helped you.

If you are stuck or need some help, send an email, and I will try to help as much as possible.

October 24, 2011

процессе работы с учётными записями пользователям Windows гораздо удобнее иметь дело с осмысленными именами, компьютеры же, привыкшие на языке цифр вместо имён учётных записей оперируют их SID — уникальными идентификаторами безопасности. В Windows SID могут иметь не только пользователи, свои идентификаторы присваиваются группам, доменам, различным системным объектам и т.д.

При выполнении некоторых трюков и тонких настроек вам может понадобиться этот самый SID. Покопавшись в системном реестре, его можно извлечь оттуда вручную, но есть и более простой способ. Если у вас на компьютере завалялся пакет Sysinternals Suite, можете воспользоваться входящей в его состав утилитой PsGetSid, она то как раз и нужна, чтобы вытаскивать SID из системы. А можно извлечь SID и безо всяких сторонних средств. Для этого в Windows есть командная строка и консоль .

Чтобы получить SID текущего пользователя, выполните в запущенной от имени администратора командной строке такую команду:


Как получить sid пользователя?

Как получить sid пользователя?

Как получить sid пользователя?

166 people found this article helpful

Updated on January 15, 2022

What to Know

Lifewire / Emily Mendoza

Thanks for letting us know!

Get the Latest Tech News Delivered Every Day

Методы определения сида компьютера

Хочу отметить, что данную команду вы должны выполнять либо на контроллере домена или же на рабочей станции, где установлены консоли администрирования и утилиты из пакета RSAT.

В противном случае вы получите ошибку “dsquery” не является внутренней или внешней


Как получить sid пользователя?

Как получить sid пользователя?

Как получить sid пользователя?

тут так же будет запрошен SID учетной записи “Администратор”. Если компьютер доменный, то нам поможет командлет Get-ADComputer. Запускаем оснастку PowerShell и вводим команду:


Как получить sid пользователя?

Как видите методов очень много. Видел я метод и получения сида из реестра Windows, в ветке

На этом у меня все, с вами был Иван Семин, автор и создатель IT блога Pyatilistnik.org.

Что такое Sid windows

Давайте разбираться из каких частей состоит Security IDentifier.

:/>  Сборка Windows 7 SP1 N 10 in 1 KottoSOFT (En\Ru) (x86\x64) v.7 Поддержка UEFI x64

Впереди идет версия сида, далее Генеральная область Authority – это ссылка на систему источник, которая его выпустила. В операционных системах Windows версия  Security IDentifier сейчас одна и равна она 1, Генеральная область Authority имеет значения 1,3,5, для Microsoft Exchange она 9. Далее в сиде следует 1 или более идентификаторов Sub Authority, а за ними идет RID (Relative IDentificator) локальный для данного Sub Authority номер субъекта безопасности.


Как получить sid пользователя?

По мимо этого, в любой ос Windows существуют встроенные или BuiltIn группы и учетные записи, например администратор или гость, в каждой ос виндоус они имеют одинаковые SID значения. Посмотреть вы их можете в оснастке Управление компьютером.


Как получить sid пользователя?

Сделаны они для того, что если у вас нет Active Directory, то вы могли бы администрировать данные системы с помощью них. Все SID для данных учетных записей находятся в локальной базе данных Windows, под названием Security Account Manager или SAM. Все сиды пользователей домена лежат в базе Active Directory в файле NTDS.dit.

При создании учётной записи пользователя, группы или присвоению имени компьютеру каждому из этих объектов Windows присваивает уникальный идентификационный идентификатор безопасности, именуемый или просто SID. И так как именно SID позволяет точно идентифицировать пользователя, для доступа к различным внутренним и внешним ресурсам Windows использует его.

Исключение составляют SIDы встроенных учётных записей, уже имеющихся в Windows — скрытого администратора и гостя. Независимо от версии системы, эти идентификаторы одинаковы во всех экземплярах Windows. Сие сделано специально, дабы администратор имел возможность централизовано управлять доступом при отсутствии доменной структуры.

При выполнении различных тонких настроек, применении твиков подобных тому действий у вас может возникнуть необходимость узнать SID пользователя по его имени. Сделать это можно разными путями, и здесь мы рассмотрим самые распространённые. Если нужно посмотреть SID текущего пользователя, самым лучшим решением будет использование консольной утилиты whoami.

Откройте командную строку и выполните в ней такую команду:


Как получить sid пользователя?

Если же вам нужно получить SID другого юзера, используем такую конструкцию с другой консольной утилитой wmic:


Как получить sid пользователя?

Аналогичным образом можно узнать имя пользователя, зная его SID, указав его в качестве значения параметра name. По такому же принципу строятся другие запросы, например, в запрос можно вставить имя локального компьютера. Так можно получить SID администратора локального компьютера, используя оператор и указав в качестве значения переменную , на место которой подставится имя компьютера.

С задачей извлечения SID пользователя прекрасно справляется , только его синтаксис может показаться не очень удобным.

Вот, этой командой мы получаем SID пользователя «Злой кролик»:


Как получить sid пользователя?

А можно и так, добавив в список фильтров имя компьютера (та же переменная %computername%):


Как получить sid пользователя?

Будьте внимательны, следите за кавычками. Не используйте наклонные или фигурные кавычки, все они должны быть прямыми.

Есть также и сторонние утилиты, позволяющие получить SID по имени и наоборот, например, PsGetSid, но раз с задачей справляются штатные инструменты самой Windows, приводить пример их использования в данном случае нам показалось излишним.

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


Как получить sid пользователя?

В этом нам поможет скрипт PowerShell. Откройте ISE.

New-Object PSObject -Property $Result }

:/>  Что означает код 43 при подключении usb

На выходе будет удобный список, при желании можно все экспортировать в csv или txt файл.


Как получить sid пользователя?

На этом у меня все с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

База Security Account Manager

Давайте посмотрим за, что отвечает Security Account Manager:

Хранится SAM (Security Account Manager) в реестре Windows. Как открыть реестр windows, я уже описывал не однократно, переходим в ветку.

Если вы кликните правым кликом и из контекстного меню выберете Разрешения, то обнаружите, что права доступа есть только у системы, а вот у администраторов локальной станции их нет, но при желании можно их получить, это лишний механизм защиты, так как можно вытащить хэши учетных записей и попытаться их взломать.


Как получить sid пользователя?

SAM это библиотека samsrv.dll, которая работает в Windows в виде процесса lsass.exe, увидеть это можно в диспетчере задач.


Как получить sid пользователя?

1 способ узнать sid пользователя, команда WMIC

На выходе вы получите список локальных пользователей.


Как получить sid пользователя?

Я вам это уже рассказывал в заметке Как узнать имена учетных записей Администраторов домена. На выходе получите, что то такое


Как получить sid пользователя?

Как видите все работает.


Как получить sid пользователя?

Еще с помощью WMI вы можете реализовать вот, что укажите имя компьютера (для локального) или домена (для доменного пользователя). Ниже пример получения SID локальной рабочей станции

Для доменной структуры


Как получить sid пользователя?

2 способ узнать sid пользователя, команда Whoami

Тоже довольно старенькая команда из cmd.exe. Вводим


Как получить sid пользователя?

Если ввести Whoami /logonid, то можно получить logonid, выглядит он вот так S-1-5-5-0-595920

Если ввести ключ /all, то вы увидите, все sid локальных (bultin) групп и пользователей


Как получить sid пользователя?

Так же вы увидите сведения о привилегиях.


Как получить sid пользователя?

На мой взгляд, данный метод, немного проще первого, так как требует ввода меньшего количества ключей.

В третьем способе мы воспользуемся средствами графического интерфейса, а точнее самой оснастке Active Directory пользователи и компьютеры. В ней есть встроенный механизм называется редактор атрибутов Active Directory. Открываем вкладку Вид и ставим галку Дополнительные параметры, да забыл отметить нужно быть членом группы Администраторы схемы.


Как получить sid пользователя?

После чего заходим в свойства учетной записи, вкладка Редактор атрибутов и находим там поле objectSid.


Как получить sid пользователя?

Так же SID можно посмотреть и во встроенной оснастке ADSIedit, подключаетесь там к контексту именования имен и заходите в свойства нужной учетной записи.


Как получить sid пользователя?

Да чуть не забыл в Windows Server 2012 R2 есть такое средство как Центр администрирования Active Directory, ищите там нужную учетную запись и в ней находите пункт SID.


Как получить sid пользователя?

4 способ узнать sid пользователя, утилита PsGetSid

Есть такая замечательная утилита от Microsoft од названием PsGetSid.

Когда вы скачаете и разархивируете файл, вы получите папку с большим набором утилит, среди них будет PsGetSid.


Как получить sid пользователя?

смысл у данной утилиты очень простой, она входит в состав Sysinternals и умеет получать SID пользователя по его имени и наоборот, умеет получать как локальных пользователей, так и доменных.

и наоборот, выясним имя по SID:


Как получить sid пользователя?

5 способ узнать sid пользователя, PowerShell и System. Security. Principal. N TAccount

Пятым методом будет использование в powershell класса System. Security. Principal. NTAccount. Для домена Active Directory.


Как получить sid пользователя?

Для локального пользователя команда будет такой.

Обратная ситуация получаем по SID имя пользователя

:/>  Почему музыка в фильмах намного громче слов — как их уравнять

6 способ узнать sid пользователя, Get-ADUser

О том, что такое SID у пользователя, я уже рассказывал. S ID – это уникальное имя (буквенно-цифровая символьная строка), которое используется для идентификации объекта, такого как пользователь или компьютер в сети систем NT. Windows предоставляет или запрещает доступ и права доступа к ресурсам на основе ACL, которые используют SID для уникальной идентификации компьютеров и их членства в группах. Когда компьютер запрашивает доступ к ресурсу, его ACL проверяет SID компьютера, чтобы определить, разрешено ли этому компьютеру выполнять это действие или нет. Схематично выглядит вот так.

Существует два типа SID у компьютера

Первым делом я выведу имя компьютера, через команду hostname. В моем примере, это W10-CL01.

Далее я выведу локальный SID компьютера, через утилиту PsGetSid:

В итоге я получил SID for W10-CL01w10-cl01:S-1-5-21-7706586-876249769-275126362. Обратите внимание, что перед идентификатором безопасности идет имя компьютера, это сразу говорит, что он локальный.

И команда указанная выше, показывает вам доменный SID рабочей станции. SID for ROOTw10-cl01$:S-1-5-21-233550040-578987154-4094747311-1602. Обратите внимание, что перед идентификаторам идет имя домена ROOT.


Как получить sid пользователя?

Is this article up to date?

wikiHow Tech Help:

Tech troubles got you down? We’ve got the tips you need

You’re all set!

About This Article

Thanks to all authors for creating a page that has been read 278,622 times.

Нюансы идентификаторов безопасности на рабочих станциях

Некоторое время назад, Марк Руссинович, очень известный человек в мире Microsoft, написал замечательную статью, про мифы дублирования SID, где показал на практике свои мысли, но после прочтения статьи у некоторых людей оставалась в голове путаница или вопросы, бы хотел немного уточнить по статье (Ссылка на нее https://blogs.technet.microsoft.com/mark_russinovich/2009/11/15/sid/).

Предположим, что вы клонируете нужную вам виртуальную машину или хост. Если вы не обезличиваете систему, с помощью Sysprep, то у вас все полученные клоны систем, будут иметь один локальный SID компьютера. Если мы говорим про окружение в виде рабочей группы в локальной сети, то ни каких проблем с доступом или конфликтом с доступом к ресурсам вы не увидите. Но вот в случае с доменным SID, такое не получится, он должен быть уникальным в пределах Active Directory, в противном случае, у вас будут конфликты между двумя объектами. Убедитесь, что после клонирования и обезличивания у вас разные SID, полученные от мастера RID.

Например, если вы попытаетесь восстановить безопасный канал между контроллером домена и клонированной машиной у которой дублирующий идентификатор безопасности, то она в домен попадет, но выкинет из него первую рабочую станцию и еще кучу различного и разного, глючного поведения.

Оставьте комментарий