- Как узнать SID пользователя по имени и наоборот
- Получить SID локального пользователя
- Получить SID доменного пользователя
- Определить имя пользователя по SID
- Как узнать идентификатор безопасности (SID) пользователя в Windows 10
- Как узнать идентификатор безопасности (SID) пользователя в командной строке
- Как узнать идентификатор безопасности (SID) пользователя в Windows PowerSell
- Как узнать идентификатор безопасности (SID) в редакторе реестра
- Как найти SID пользователя в WMIC или в реестре Windows 10
- Как найти SID пользователя с WMIC
- Как найти SID пользователя в реестре
- Как узнать sid пользователя windows server
- Сколько у компьютера SID-ов?
- Существует два типа SID у компьютера:
- Нюансы идентификаторов безопасности на рабочих станциях
- Методы определения сида компьютера
- Как узнать SID пользователя или группы AD по имени и наоборот?
- Как получить SID локального пользователя?
- Узнать SID пользователя или группы в домене AD по имени
- Как узнать имя учетной записи пользователя или группы по SID?
- Поиск объектов в Active Directory по SID
Как узнать SID пользователя по имени и наоборот
В среде Windows каждому доменному и локальному пользователю, группе и другим объектам безопасности, присваивается уникальный идентификатор — Security Identifier или SID. Именно SID, а не имя пользователя используется для контроля доступа к различным ресурсам: сетевым каталогам, ключам реестра, объектам файловой системы и т.д. В этой статье мы покажем несколько простых способов узнать SID пользователя и обратной процедуры – определения имени пользователя Windows по его SID.
Для преобразования username в SID можно воспользоваться отличий утилитой из комплекта Sysinternals — PsGetSid. Но ее придется выкачивать и устанавливать на каждую систему вручную.
Гораздо проще воспользоваться утилитой командной строки или скриптом Powershell
Получить SID локального пользователя
Чтобы получить SID локальной учетной записи на данной машине, можно воспользоваться утилитой wmic, обращающейся к WMI хранилищу. Для локального пользователя test_user команда будет такой:
wmic useraccount where name=’test_user’ get sid
В этом примере SID пользователя — S-1-5-21-1175651296-1316126944-203051354-1005
Если нужно узнать SID текущего пользователя, выполните такую команду:
wmic useraccount where name=’%username%’ get sid
На PowerShell скрипт, выдающий тот же результат можно реализовать с помощью двух классов SecurityIdentifier и NTAccount.
Получить SID доменного пользователя
Узнать SID текущей доменной учетной записи можно командой:
Для получения SID доменного пользователя можно воспользоваться командлетом Get-ADUser, входящего в состав модуля Active Directory Module для Windows PowerShell.
Если модуль AD для PowerShell отсутствует, через Powershell можно запросить данные из домена так:
Эта же команда в одну строку:
(new-object security.principal.ntaccount “jjsmith»).translate([security.principal.securityidentifier])
Определить имя пользователя по SID
Чтобы узнать имени учетной записи пользователя по SID (обратная процедура), можно воспользоваться одной из следующих команд:
wmic useraccount where sid=’S-1-3-12-12452343106-3544442455-30354867-1434′ get name
На PowerShell при помощи модуля AD для Powershell:
Попробуйте наши услуги обслуживания и получите третий месяц обслуживания в подарок!
Как узнать идентификатор безопасности (SID) пользователя в Windows 10
В данной статье рассмотрено несколько способов, с помощью которых можно узнать идентификатор безопасности (SID) пользователя в операционной системе Windows 10.
Операционная система использует именно идентификаторы безопасности (SID) для контроля доступа к различным ресурсам, таким как объекты файловой системы, ключам реестра, сетевым каталогам, что означает, что даже если вы измените имя пользователя, то это не повлияет на какие-либо предварительные настройки для этой учетной записи, поскольку каждая конфигурация привязана к SID, который остается постоянным.
Идентификатор безопасности может быть полезен во время выполнения определенных команд, связанных с безопасностью компьютера.
Как узнать идентификатор безопасности (SID) пользователя в командной строке
Чтобы узнать SID текущего пользователя воспользуемся утилитой whoami, для этого откройте командную строку и выполните следующую команду:
Также узнать SID текущего пользователя можно выполнив следующую команду:
wmic useraccount where name=»%username%» get name,sid
Чтобы узнать все SID присутствующие в операционной системе, выполните команду:
Чтобы узнать SID определённого пользователя, выполните следующую команду:
wmic useraccount where name=»TestUser1″ get sid
Чтобы узнать имя пользователя учетной записи по SID (обратная процедура), выполните команду:
wmic useraccount where sid=» S-1-5-21-3210479907-464018182-414762983-1002 » get name
Как узнать идентификатор безопасности (SID) пользователя в Windows PowerSell
Также узнать идентификатор безопасности можно используя консоль Windows PowerShell.
Чтобы узнать все идентификаторы безопасности (SID) в консоли Windows PowerShell, выполните команду:
Get-WmiObject Win32_UserAccount | Select Name,SID
Чтобы узнать SID определённого пользователя, выполните следующую команду:
Также узнать SID определённого пользователя, можно выполнив команду:
Чтобы узнать имя пользователя учетной записи по SID (обратная процедура), выполните команду следующего вида:
Где вместо SID укажите нужный идентификатор безопасности.
В данном примере команда выглядит так:
Как узнать идентификатор безопасности (SID) в редакторе реестра
Используя редактор реестра, также можно узнать идентификатор безопасности (SID), для этого откройте редактор реестра нажав сочетание клавиш + R и в открывшемся окне Выполнить введите regedit и нажмите клавишу Enter ↵.
В открывшемся окне редактора реестра, скопируйте/вставьте или перейдите по следующему пути:
В разделе ProfileList вы увидите всех пользователей и их идентификаторы SID.
Как найти SID пользователя в WMIC или в реестре Windows 10
Существует множество причин, по которым вам может понадобиться найти идентификатор безопасности (SID) для учетной записи конкретного пользователя в Windows, но в нашем уголке мира общая причина для этого состоит в том, чтобы определить, в каком ключе раздела HKEY_USERS в реестре Windows следует искать пользовательские данные реестра.
Независимо от причины, найти соответствующий SID для имен пользователей действительно легко благодаря wmic-команде – команда доступная из командной строки в большинстве версий Windows.
См. раздел «Как найти SID пользователя в реестре» ниже на странице с инструкциями по сопоставлению имени пользователя с SID с помощью информации в реестре Windows, альтернативного метода использования WMIC.
WMIC команда не существовала до Windows XP, так что вы должны использовать метод реестра в старых версиях Windows.
Выполните следующие простые шаги, чтобы отобразить таблицу имён пользователей и их соответствующие идентификаторы безопасности:
Как найти SID пользователя с WMIC
Вероятно, потребуется всего лишь минута, а может быть и меньше, чтобы найти SID пользователя в Windows через WMIC:
Откройте командную строку.
Если вы не видите командную строку в меню «Power User», введите cmd в строку поиска меню «Пуск» и нажмите «Командная строка», когда увидите её.
Вам не нужно открывать командную строку с повышенными правами, чтобы это работало. Для некоторых команд Windows это требуется, но в приведенном ниже примере команды WMIC вы можете открыть обычную неадминистративную командную строку.
Введите в командной строке следующую команду в точности так, как показано здесь, включая пробелы или их отсутствие:
Если вы знаете имя пользователя и хотите получить только SID этого пользователя, введите эту команду, но замените USER именем пользователя (оставьте кавычки):
Если вы получаете сообщение об ошибке, что команда wmic не распознается, измените рабочий каталог на C:\Windows\System32\wbem\ и повторите попытку. Вы можете сделать это с помощью команды cd (изменить каталог).
Вы должны увидеть таблицу, отображаемую в командной строке. Это список всех учетных записей пользователя в Windows, с указанием имени пользователя и соответствующего SID учетной записи.
Теперь, когда вы уверены, что определенное имя пользователя соответствует определенному SID, вы можете вносить в реестр любые изменения, которые вам нужны, или делать то, для чего вам нужна эта информация.
Если у вас есть случай, когда вам нужно найти имя пользователя, но всё, что у вас есть, – это идентификатор безопасности, вы можете «отменить» команду следующим образом (просто замените этот SID на соответствующий):
Как найти SID пользователя в реестре
Вы также можете определить SID пользователя, просматривая значения ProfileImagePath в каждом S-1-5-21 с префиксом SID, перечисленных под этим ключом:
В значении ProfileImagePath в каждом ключе реестра с именем SID указывается каталог профиля, в который входит имя пользователя.
Этот метод сопоставления пользователей с SID покажет только тех пользователей, которые вошли в систему или вошли в систему и переключились на другого пользователя. Чтобы продолжить использовать метод реестра для определения идентификаторов безопасности других пользователей, вам необходимо войти в систему под учетной записью каждого пользователя в системе и повторить эти шаги. Это большой недостаток; предполагая, что вам это доступно, гораздо лучше использовать метод команды wmic.
Как узнать sid пользователя windows server
Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами установили домен Active Directory на Windows Server 2019. Одним из краеугольных понятий в AD является идентификатор безопасности компьютера SID, о нем и пойдет речь. Мы разберем, какие они бывают у сервера и рабочей станции, а так же научимся определять SID компьютера, буквально за минуту.
Сколько у компьютера SID-ов?
Существует два типа SID у компьютера:
В обоих случаях у вас будет два абсолютно разных SID. Первый дескриптор безопасности у вас генерируется при установке системы, второй если вы вводите его в домен AD. И так, у меня есть тестовый домен root.pyatilistnik.org. Есть клиентская станция с Windows 10 1803. Для того, чтобы вам показать разницу и оба SID идентификатора на моей тестовой Windows 10, мы воспользуемся утилитой Марка Русиновича PsGetSid из инструментария Sysinternals (Скачать PsGetSid можно по ссылке https://docs.microsoft.com/en-us/sysinternals/downloads/psgetsid). Распаковываете архив с утилитой, открываете командную строку от имени администратора и переходите с помощью cd в каталог с утилитой PsGetSid.
Первым делом я выведу имя компьютера, через команду hostname. В моем примере, это W10-CL01.
Далее я выведу локальный SID компьютера, через утилиту PsGetSid:
В итоге я получил SID for W10-CL01\w10-cl01:S-1-5-21-7706586-876249769-275126362. Обратите внимание, что перед идентификатором безопасности идет имя компьютера, это сразу говорит, что он локальный.
И команда указанная выше, показывает вам доменный SID рабочей станции. SID for ROOT\w10-cl01$:S-1-5-21-233550040-578987154-4094747311-1602. Обратите внимание, что перед идентификаторам идет имя домена ROOT\.
Нюансы идентификаторов безопасности на рабочих станциях
Некоторое время назад, Марк Руссинович, очень известный человек в мире Microsoft, написал замечательную статью, про мифы дублирования SID, где показал на практике свои мысли, но после прочтения статьи у некоторых людей оставалась в голове путаница или вопросы, \ бы хотел немного уточнить по статье (Ссылка на нее https://blogs.technet.microsoft.com/mark_russinovich/2009/11/15/sid/).
Предположим, что вы клонируете нужную вам виртуальную машину или хост. Если вы не обезличиваете систему, с помощью Sysprep, то у вас все полученные клоны систем, будут иметь один локальный SID компьютера. Если мы говорим про окружение в виде рабочей группы в локальной сети, то ни каких проблем с доступом или конфликтом с доступом к ресурсам вы не увидите. Но вот в случае с доменным SID, такое не получится, он должен быть уникальным в пределах Active Directory, в противном случае, у вас будут конфликты между двумя объектами. Убедитесь, что после клонирования и обезличивания у вас разные SID, полученные от мастера RID.
Например, если вы попытаетесь восстановить безопасный канал между контроллером домена и клонированной машиной у которой дублирующий идентификатор безопасности, то она в домен попадет, но выкинет из него первую рабочую станцию и еще кучу различного и разного, глючного поведения.
Методы определения сида компьютера
Хочу отметить, что данную команду вы должны выполнять либо на контроллере домена или же на рабочей станции, где установлены консоли администрирования и утилиты из пакета RSAT.
тут так же будет запрошен SID учетной записи «Администратор». Если компьютер доменный, то нам поможет командлет Get-ADComputer. Запускаем оснастку PowerShell и вводим команду:
Как видите методов очень много. Видел я метод и получения сида из реестра Windows, в ветке
Как узнать SID пользователя или группы AD по имени и наоборот?
В среде Windows каждому доменному и локальному пользователю, группе и другим объектам безопасности, присваивается уникальный идентификатор — Security Identifier или SID. Именно SID, а не имя пользователя используется для контроля доступа к различным ресурсам: сетевым папкам, ключам реестра, объектам файловой системы, принтерам и т.д. В этой статье мы покажем несколько простых способов узнать SID пользователя или группы (локальных или из Active Directory), и обратную процедуру – определение имени пользователя или группы Windows по известному SID.
Получение учетки по SID:
Как получить SID локального пользователя?
Чтобы получить SID локальной учетной записи на данном компьютере, можно воспользоваться утилитой wmic, которая позволяет обратится к пространству имен WMI компьютера. Для получения SID локального пользователя test_user можно использовать утилиту WMIC:
wmic useraccount where name=’test_user’ get sid
Команда вернула нам SID указанного пользователя — S-1-5-21-1175651296-1316126944-203051354-1005.
Если нужно узнать SID текущего пользователя (под которым выполняется команда), используйте такую команду:
wmic useraccount where name=’%username%’ get sid
Узнать SID пользователя или группы в домене AD по имени
Вы можете узнать SID текущей доменной учетной записи командой:
Узнать SID доменного пользователя можно с помощью WMIC. В этом случае в команде нужно указать имя домена:
wmic useraccount where (name=’jjsmith’ and domain=′corp.winitpro.ru′) get sid
Для получения SID доменного пользователя можно воспользоваться командлетом Get-ADUser, входящего в состав модуля Active Directory Module для Windows PowerShell. Получим SID для аккаунта jjsmith:
Вы можете получить SID группы AD с помощью другого командлета — Get-ADGroup:
Эта же команда PowerShell в одну строку:
(new-object security.principal.ntaccount “jjsmith»).translate([security.principal.securityidentifier])
Как узнать имя учетной записи пользователя или группы по SID?
Чтобы узнать имя учетной записи пользователя по SID (обратная процедура), можно воспользоваться одной из следующих команд:
wmic useraccount where sid=’S-1-3-12-12452343106-3544442455-30354867-1434′ get name
На PowerShell получить имя пользователя по его SID можно с помощью модуля AD для PowerShell:
Чтобы найти имя доменной группы по известному SID используйте команду:
Также можно узнать SD группу и пользователя с помощью встроенных классов PowerShell (без дополнительных модулей):
Поиск объектов в Active Directory по SID
Если вы не знаете к какому типу объекта AD относится некий SID и какой точно командлет использовать для его поиска (Get-AdUser, Get-ADComputer или Get-ADGroup), вы можете использовать универсальный метод поиска объектов в Active Directory по SID с помощью командлета Get-ADObject (параметр IncludeDeletedObjects позволяет искать по удаленным объектам AD в корзине).
SID
В нашем случае объект AD, который имеет данный SID, является компьютером (objectClass).