Как найти на своем компьютере идентификатор пользователя

Содержание

  1. SID пользователя в Windows: Что это такое и как его узнать
  2. Что такое SID пользователя в Windows?
  3. Как узнать SID пользователя в Windows с помощью cmd
  4. Узнаем ID компьютера
  5. Узнаем ID ПК
  6. Способ 1: «Диспетчер устройств»
  7. Способ 2: «Командная строка»
  8. Смена ID
  9. Заключение
  10. Что такое ID компьютера и как его узнать?
  11. Что такое ID компьютера?
  12. Как узнать ID компьютера?
  13. Командная строка
  14. Диспетчер устройств
  15. AIDA64
  16. Можно ли изменить ID компьютера?
  17. Подводим итоги
  18. Как узнать SID пользователя или группы AD по имени и наоборот?
  19. Как получить SID локального пользователя?
  20. Узнать SID пользователя или группы в домене AD по имени
  21. Как узнать имя учетной записи пользователя или группы по SID?
  22. Поиск объектов в Active Directory по SID

SID пользователя в Windows: Что это такое и как его узнать

Вы наверняка пытались управлять разрешениями определенных файлов, папок или часто просматриваете реестр Windows, то может показаться, что вы видели некоторые строковые значения типа S-1-5-21-281723897-98365329832-7382047462- 600. Эти значения известны как идентификаторы безопасности или SID. Давайте разберем, что такое SID пользователя в Windows 10 и какие способы его узнать.

Что такое SID пользователя в Windows?

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

Как узнать SID пользователя в Windows с помощью cmd

Одним из самых быстрых способов узнать идентификатор пользователя SID в Windows 10, — это воспользоваться командной строкой. Откройте командную строку и введите ниже команды, которые соответствуют вашим требованиям.

  1. Имя SID используемое в настоящее время: введите команду whoami /user и нажмите Enter.
  2. Имя SID определенного пользователя: введите в командую строку wmic useraccount where name=»хомячок» get name,sid . Где «хомячок» — это фактическое имя пользователя.
  3. Все SID пользователей в Windows: введите wmic useraccount get name,sid .

Узнаем ID компьютера

Узнаем ID ПК

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

Узнать свой MAC-адрес довольно просто. Для этого существует два пути – «Диспетчер устройств» и «Командная строка».

Способ 1: «Диспетчер устройств»

Как уже было сказано выше, ID – это адрес конкретного устройства, то есть сетевого адаптера ПК.

  1. Идем в «Диспетчер устройств». Получить к нему доступ можно из меню «Выполнить» (Win+R), набрав команду


Открываем раздел «Сетевые адаптеры» и ищем название своей карты.


Дважды кликаем по адаптеру и, в открывшемся окне, переходим на вкладку «Дополнительно». В списке «Свойство» нажимаем на пункт «Сетевой адрес» и в поле «Значение» получаем MAC компьютера.

Если по каким-то причинам значение представлено в виде нулей или переключатель стоит в положении «Отсутствует», то определить ID поможет следующий способ.

Способ 2: «Командная строка»

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

  1. Открываем «Командную строку» с помощью все того же меню «Выполнить». В поле «Открыть» набираем


Откроется консоль, в которой нужно прописать следующую команду и нажать ОК:


Система выдаст список всех сетевых адаптеров, в том числе и виртуальных (мы их видели в «Диспетчере устройств»). Для каждого будут указаны свои данные, в том числе и физический адрес. Нас интересует тот адаптер, с помощью которого мы подключены к интернету. Именно его MAC видят те люди, которым он нужен.

Смена ID

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

Способов смены MAC-адресов несколько. Мы поговорим о самых простых и проверенных.

Вариант 1: Сетевая карта

Это наиболее очевидный вариант, так как при замене сетевой карты в компьютере меняется и ID. Это касается и тех устройств, которые выполняют функции сетевого адаптера, например, Wi-Fi модуль или модем.

Вариант 2: Системные настройки

Данный способ заключается в простой замене значений в свойствах устройства.

  1. Открываем «Диспетчер устройств» (см. выше) и находим свой сетевой адаптер (карту).
  2. Кликаем дважды, переходим на вкладку «Дополнительно» и ставим переключатель в положение «Значение», если это не так.


Далее необходимо прописать адрес в соответствующее поле. MAC представляет собой набор из шести групп шестнадцатеричных чисел.

Здесь тоже есть нюанс. В Windows существуют ограничения на присвоение адаптерам адресов, «взятых из головы». Правда, есть и хитрость, позволяющая этот запрет обойти – воспользоваться шаблоном. Их четыре:

Вместо звездочек следует подставить любое шестнадцатиричное число. Это цифры от 0 до 9 и буквы от A до F (латинские), всего шестнадцать символов.

Вводить MAC-адрес следует без разделителей, в одну строку.

После перезагрузки адаптеру будет присвоен новый адрес.

Заключение

Как видите, узнать и заменить ID компьютера в сети довольно несложно. Стоит сказать, что без крайней надобности этим заниматься не желательно. Не хулиганьте в сети, чтобы не быть заблокированными по MAC, и все будет хорошо.

Что такое ID компьютера и как его узнать?

Владелец ПК или ноутбука может улучшать свою машину сколько захочет: пытаться увеличить скорость Интернета через роутер, приобретать новые составляющие и устанавливать самые современные программы. Для корректной работы некоторых из них необходимо узнать ID, или идентификационный номер, компьютера. Что это такое и где его посмотреть — попробуем разобраться.

Что такое ID компьютера?

ID компьютера — это индивидуальный номер, выраженный в шестнадцатеричной системе счисления и напрямую привязанный к сетевой карте. Именно под этим номером, вне зависимости от того, использует юзер Windows, Linux или macOS, устройство видно в сети — и именно по ID, в отличие от IP, его реально найти.

Важно: ID компьютера часто называется MAC-адресом — далее в нашем материале эти понятия будут использоваться в качестве синонимов.

Как узнать ID компьютера?

Посмотреть ID ПК или ноутбука под Windows так же просто, как подключить микрофон к компьютеру; сделать это можно, используя штатные средства ОС, а также с помощью одной из известнейших сторонних программ; о трёх самых простых способах будет рассказано ниже.

Командная строка

Юзер, уже имеющий представление, как узнать, какая операционная система на компьютере, наверняка без особого труда сможет воспользоваться функционалом командной строки — благо от него понадобится ввести всего одну команду. Чтобы посмотреть ID компьютера, действовать нужно следующим образом:

  • Вызвать командную строку, набрав соответствующее словосочетание в «Поиске» Windows.

  • Ввести в открывшемся окошке команду ipconfig /all без лишних пробелов и кавычек и нажать на клавишу Enter.

  • Найти в выведенном на экран списке раздел «Физический адрес» — это и будет искомый ай-ди, или идентификационный номер.

Важно: если на компьютере установлены элементы аппаратной виртуализации или качественный VPN-клиент, пользователь увидит несколько разделов «Адаптер Ethernet», содержащих соответствующую информацию. Выбирать реальный нужно, руководствуясь или названием своего провайдера, или отсутствием в заголовке «лишних» надписей.

Диспетчер устройств

Узнать ID компьютера с помощью системной утилиты «Диспетчера устройств» можно следующим образом:

  • Вызвать посредством «Поиска» меню «Панель управления».

  • Перейти в раздел «Система и безопасность».

  • Далее — в подраздел «Система».

  • В новом окне воспользоваться расположенной справа от основного поля ссылкой «Диспетчер устройств».

  • Найти и развернуть раздел «Сетевые адаптеры».

  • Найти свой реальный сетевой адаптер.

  • Щёлкнуть по заголовку правой клавишей мыши, выбрать в открывшемся меню пункт «Свойства».

  • Перейти в раздел «Сетевой адрес» (Network Address) и посмотреть или скопировать ай-ди в текстовом поле.

Совет: если это поле остаётся пустым или под ним отмечен параметр «Отсутствует», чтобы узнать ID своего компьютера или ноутбука, пользователю придётся применить первый или третий из описанных методов.

AIDA64

Удобнейшее приложение для ПК и смартфонов, с помощью которого можно без всяких дополнительных манипуляций посмотреть характеристики компьютера. Всё, что нужно юзеру, это:

  • Запустить программу и перейти в раздел «Сеть».

  • Далее — в подраздел «Сеть Windows».

  • Выбрать в открывшемся списке свой физический (реальный) сетевой адаптер.

  • И посмотреть ай-ди компьютера или ноутбука в нижнем поле.

Важно: пользователь может скопировать данные прямо в приложении, щёлкнув по номеру правой клавишей мыши и выбрав в контекстном меню нужный пункт.

Можно ли изменить ID компьютера?

Изменить ID компьютера под Windows можно несколькими способами:

  • приобретя и установив новую сетевую карту — это самый простой и стопроцентно работающий, но и наиболее дорогой вариант;
  • найдя и скачав в Интернете специальную программу — однако далеко не все они работают должным образом;
  • снова зайдя в «Диспетчер устройств».

В последнем случае пользователю понадобится:

  • В уже знакомом поле «Сетевой адрес» вместо существующей комбинации ввести новую; обязательное условие — в качестве второго по счёту символа должны выступать цифры шестнадцатеричной системы 2, 6, А или Е; остальные символы можно брать из головы.

  • Убедившись в правильности введённого ай-ди, нажать «ОК» и закрыть «Диспетчер устройств».

  • Теперь пользователю достаточно перезагрузить компьютер или ноутбук и снова проверить ID — если всё сделано правильно, номер должен измениться.

Подводим итоги

ID — это индивидуальный номер компьютера или ноутбука, позволяющий идентифицировать устройство в сети и по сути совпадающий с MAC-адресом. Узнать его можно с помощью командной строки, «Диспетчера устройств» или специальных программных продуктов. Чтобы изменить ай-ди компьютера, следует вписать новое значение в поле «Сетевой адрес» или приобрести и установить новую сетевую карту.

Как узнать SID пользователя или группы AD по имени и наоборот?

В среде Windows каждому доменному и локальному пользователю, группе и другим объектам безопасности, присваивается уникальный идентификатор — Security Identifier или SID. Именно SID, а не имя пользователя используется для контроля доступа к различным ресурсам: сетевым папкам, ключам реестра, объектам файловой системы, принтерам и т.д. В этой статье мы покажем несколько простых способов узнать SID пользователя или группы (локальных или из Active Directory), и обратную процедуру – определение имени пользователя или группы Windows по известному SID.

Получение учетки по SID:

На мой взгляд, проще всего для преобразования SID -> Username и Username -> SID проще всего воспользоваться командами командной строки или несложными командлетами PowerShell:

Как получить 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

С помощью двух .NET классов System.Security.Principal.SecurityIdentifier и System.Security.Principal.NTAccount вы можете получить SID пользователя с помощью PowerShell:

$objUser = New-Object System.Security.Principal.NTAccount(«LOCAL_USER_NAME»)
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value

Узнать 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:

Get-ADUser -Identity ‘jjsmith’ | select SID

Вы можете получить SID группы AD с помощью другого командлета — Get-ADGroup:

Get-ADGroup -Filter | Select SID

Если на вашем компьютере не установлен модуль AD для PowerShell, вы можете получить SID пользователя с помощью упомянутых ранее классов .Net:

$objUser = New-Object System.Security.Principal.NTAccount(«corp.wintpro.ru»,»jjsmith»)
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value

Эта же команда 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:

Get-ADUser -Identity S-1-5-21-247647651-3952524288-2944781117-23711116

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

Get-ADGroup -Identity S-1-5-21-247647651-3952524288-2944781117-23711116

Также можно узнать SD группу и пользователя с помощью встроенных классов PowerShell (без дополнительных модулей):

$objSID = New-Object System.Security.Principal.SecurityIdentifier («S-1-5-21-2470456651-3958312488-29145117-23345716»)
$objUser = $objSID.Translate( [System.Security.Principal.NTAccount])
$objUser.Value

Поиск объектов в Active Directory по SID

Если вы не знаете к какому типу объекта AD относится некий SID и какой точно командлет использовать для его поиска (Get-AdUser, Get-ADComputer или Get-ADGroup), вы можете использовать универсальный метод поиска объектов в Active Directory по SID с помощью командлета Get-ADObject (параметр IncludeDeletedObjects позволяет искать по удаленным объектам AD в корзине).

$sid = ‘S-1-5-21-2470146651-3951111111-2989411117-11119501’
Get-ADObject –IncludeDeletedObjects -Filter «objectSid -eq ‘$sid’» | Select-Object name, objectClass

SID

В нашем случае объект AD, который имеет данный SID, является компьютером (objectClass).

SID (Security IDentifier) – это уникальный идентификатор, который присваивается пользователям, группам, компьютерам или другим объектам безопасности при их создании в Windows или Active Directory. Windows использует SID, а не имя пользователя для контроля доступа к различным ресурсам: сетевым папкам, ключам реестра, объектам файловой системы (NTFS разрешения), принтерам и т.д. В этой статье мы покажем несколько простых способов получить SID пользователя, группы или компьютера, и обратную процедуру – получить объект по известному SID.

Содержание:

  • Что такое SID объекта в Windows?
  • Как получить SID локального пользователя?
  • Узнать SID пользователя или группы в домене Active Directory
  • Получить SID компьютера
  • Как узнать имя пользователя или группы по известному SID?
  • Поиск объектов в Active Directory по SID

Что такое SID объекта в Windows?

Как мы уже сказали, SID (security identifier) позволяет уникально идентифицировать пользовали, группу или компьютер в пределах определенной области (домена или локального компьютера). SID представляет собой строку вида:

S-1-5-21-2927053466-1818515551-28245911311103.
В данном примере:

  • 2927053466-1818515551-2824591131 – это уникальный идентификатор домена, выдавшего SID (у всего объекта в одном домене эта часть будет одинакова)
  • 1103 – относительный идентификатор безопасности объекта (RID). Начинается с 1000 и увеличивается на 1 для каждого нового объекта. Выдается контроллером домена с FSMO ролью RID Master)

SIDы объектов Active Directory хранятся в базе ntds.dit, а SIDы локальных пользователей и групп в локальной базе диспетчера учетных записей Windows (SAM, Security Account Manager в ветке реестра HKEY_LOCAL_MACHINESAMSAM).

В Windows есть так называемые известные идентификаторы безопасности (Well-known SID). Это SID встроенных (BuiltIn) пользователей и групп, которые есть на любых компьютерах Windows. Например:

  • S-1-5-32-544
    – встроенная группу Administrators
  • S-1-5-32-545
    – локальные пользователи
  • S-1-5-32-555
    – группа Remote Desktop Users, которым разрешен вход по RDP
  • S-1-5-domainID-500
    – учетная запись встроенного администратора Windows
  • И т.д.

В Windows можно использовать различные средства для преобразования SID -> Name и Username -> SID: утилиту whoami, wmic, WMI, классы PowerShell или сторонние утилиты.

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

Чтобы получить SID локальной учетной записи, можно воспользоваться утилитой wmic, которая позволяет обратится к пространству имен WMI (Windows Management Instrumentation) компьютера.

wmic useraccount where name='test_user' get sid

Узнать SID пользователя через WMI

Команда может вернуть ошибку, если репозиторий WMI поврежден. Воспользуйтесь этой инструкцией для восстановления WMI репозитория.

Команда вернула SID указанного пользователя —
S-1-5-21-1175651296-1316126944-203051354-1005
.

Чтобы вывести список SID всех локальных пользователей Windows, выполните:

wmic useraccount get name,sid.

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

wmic useraccount where name='%username%' get sid

Можно обратится к WMI напрямую из PowerShell:

(Get-CimInstance -Class win32_userAccount -Filter "name='test_user' and domain='$env:computername'").SID

В новых версиях PowerShell Core 7.x вместо команды Get-WmiObject нужно использовать Get-CimInstance.

Но еще проще получить SID локального пользователя с помощью встроенного PowerShell модуля управления локальными пользователями и группами (Microsoft.PowerShell.LocalAccounts).

Get-LocalUser -Name 'test_user' | Select-Object Name, SID

powershell получить sid локалього пользователя в Windows

По аналогии можно получить SID локальной группы:

Get-LocalGroup -Name tstGroup1 | Select-Object Name, SID

Также вы можете использовать.NET классы System.Security.Principal.SecurityIdentifier и System.Security.Principal.NTAccount для получения SID пользователя с помощью PowerShell:

$objUser = New-Object System.Security.Principal.NTAccount("LOCAL_USER_NAME")
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value

Узнать SID пользователя или группы в домене Active Directory

Вы можете узнать SID своей доменной учетной записи командой:

whoami /user

whoami user getsid

Получить SID пользователя домена Active Directory можно с помощью WMIC. В этом случае в команде нужно указать имя домена:

wmic useraccount where (name='jjsmith' and domain=′corp.winitpro.ru′) get sid

Для получения SID доменного пользователя можно воспользоваться командлетом Get-ADUser, входящего в состав модуля Active Directory Module для Windows PowerShell. Получим SID для доменного пользователя jjsmith:

Get-ADUser -Identity 'jjsmith' | select SID

get-aduser select sid

Вы можете получить SID группы AD с помощью командлета Get-ADGroup:

Get-ADGroup -Filter {Name -like "msk-admin*"} | Select SID

Get-ADGroup получить sid доменной группы

Если на вашем компьютере не установлен модуль AD для PowerShell, вы можете получить SID пользователя с помощью классов .Net:

$objUser = New-Object System.Security.Principal.NTAccount("corp.wintpro.ru","jjsmith")

$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value

PowerShell - get SID via SecurityIdentifier and NTAccountЭта же команда PowerShell в одну строку:

(new-object security.principal.ntaccount “jjsmith").translate([security.principal.securityidentifier])

Получить SID компьютера

Если компьютер с Windows добавлен в домен Active Directory, у него будет два разных SID. Первый SID – идентификатор локального компьютера (Machine SID), а второе – уникальный идентификатор компьютера в AD.

SID компьютера в домене Active Directory можно получить с помощью команды:

Get-ADComputer srv-rds1 -properties sid|select name,sid

get-adcomputer команда для получения SID компьютера в домене Active Directory

SID локального компьютера (Machine SID) можно получить с помощью бесплатной утилиты PsGetsid (https://docs.microsoft.com/en-us/sysinternals/downloads/psgetsid): Но ее придется скачивать и устанавливать на каждый компьютер вручную.

.PsGetsid64.exe

Или просто, обрезав последние 4 символа RID и SID любого локального пользователя:

$user=(Get-LocalUser Administrator).sid
$user -replace ".{4}$"

PsGetsid6 вывести machine sid локального компьютера

Важно, чтобы у каждого компьютера в домене был уникальный локальный SID. Если вы клонируете компьютеры или виртуальные машины, или создаете их из одного шаблона, то перед тем как добавить их в домен нужно выполнить команду sysprep. Эта утилита сбрасывает локальный Machine SID. Это избавит вас от частых ошибок “Не удалось восстановить доверительные отношения между рабочей станцией и доменом”.

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

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

wmic useraccount where sid='S-1-3-12-12452343106-3544442455-30354867-1434' get name

Для поиска имени доменного пользователя по SID используйте командлеты из модуля
RSAT-AD-PowerShell
:

Get-ADUser -Identity S-1-5-21-247647651-3952524288-2944781117-23711116

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

Get-ADGroup -Identity S-1-5-21-247647651-3952524288-2944781117-23711116

Get-ADGroup найти группу по SID

Также можно узнать получить SID группы и пользователя с помощью встроенных классов PowerShell (без использования дополнительных модулей):

$objSID = New-Object System.Security.Principal.SecurityIdentifier ("S-1-5-21-2470456651-3958312488-29145117-23345716")
$objUser = $objSID.Translate( [System.Security.Principal.NTAccount])
$objUser.Value

Поиск объектов в Active Directory по SID

Если вы не знаете к какому типу объекта AD относится SID и какой точно командлет нужно использовать для его поиска (Get-AdUser, Get-ADComputer или Get-ADGroup), вы можете использовать универсальный метод поиска объектов в Active Directory по SID с помощью командлета Get-ADObject

$sid = ‘S-1-5-21-2470146651-3951111111-2989411117-11119501’
Get-ADObject –IncludeDeletedObjects -Filter "objectSid -eq '$sid'" | Select-Object name, objectClass

Get-ADObject поиск объектов в AD по известному SID

В нашем случае объект AD, который имеет данный SID, является компьютером (objectClass=computer).

В данной статье рассмотрено несколько способов, с помощью которых можно узнать идентификатор безопасности (SID) пользователя в операционной системе Windows 10.

SID (Security Identifier) — идентификатор безопасности, это уникальный идентификатор (код) который присваивается любой создаваемой доменной или локальной учетным записям, а также группе и другим объектам безопасности.

Операционная система использует именно идентификаторы безопасности (SID) для контроля доступа к различным ресурсам, таким как объекты файловой системы, ключам реестра, сетевым каталогам, что означает, что даже если вы измените имя пользователя, то это не повлияет на какие-либо предварительные настройки для этой учетной записи, поскольку каждая конфигурация привязана к SID, который остается постоянным.

Идентификатор безопасности может быть полезен во время выполнения определенных команд, связанных с безопасностью компьютера.

Содержание

  1. Как узнать идентификатор безопасности (SID) пользователя в командной строке
  2. Как узнать идентификатор безопасности (SID) пользователя в Windows PowerSell
  3. Как узнать идентификатор безопасности (SID) в редакторе реестра

Как узнать идентификатор безопасности (SID) пользователя в командной строке

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

whoami /user

Также узнать SID текущего пользователя можно выполнив следующую команду:

wmic useraccount where name=»%username%» get name,sid

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

wmic useraccount get name,sid

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

wmic useraccount where name=»TestUser1″ get sid

Где TestUser1 — имя пользователя, 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 определённого пользователя, выполните следующую команду:

(gwmi win32_useraccount -Filter «name = ‘TestUser1′»).sid

Где TestUser1 — имя пользователя, SID которого нужно узнать.

Также узнать SID определённого пользователя, можно выполнив команду:

Get-WmiObject -Class Win32_UserAccount -Filter «name=’TestUser1′»

Где TestUser1 — имя пользователя, SID которого нужно узнать.

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

(gwmi win32_useraccount -Filter «sid = ‘SID'»).name

Где вместо SID укажите нужный идентификатор безопасности.

В данном примере команда выглядит так:

(gwmi win32_useraccount -Filter «sid = ‘S-1-5-21-3210479907-464018182-414762983-1002‘»).name

Как узнать идентификатор безопасности (SID) в редакторе реестра

Используя редактор реестра, также можно узнать идентификатор безопасности (SID), для этого откройте редактор реестра нажав сочетание клавиш + R и в открывшемся окне Выполнить введите regedit и нажмите клавишу Enter ↵.

В открывшемся окне редактора реестра, скопируйте/вставьте или перейдите по следующему пути:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

В разделе ProfileList вы увидите всех пользователей и их идентификаторы SID.


Загрузить PDF


Загрузить PDF

Из этой статьи вы узнаете, как в Windows выяснить идентификатор безопасности (SID) другого пользователя.

Шаги

  1. Изображение с названием Find a Users SID on Windows Step 1

    1

    Нажмите Win+X. В левом нижнем углу откроется меню «Опытный пользователь».

  2. Изображение с названием Find a Users SID on Windows Step 2

    2

    Нажмите Командная строка (Администратор). Откроется новое окно.

  3. Изображение с названием Find a Users SID on Windows Step 3

    3

    Щелкните по Да. Откроется окно командной строки.

  4. Изображение с названием Find a Users SID on Windows Step 4

    4

    Введите WMIC useraccount get name,sid. Это команда для отображения идентификаторов безопасности всех пользователей системы.

    • Если вы знаете имя пользователя, введите следующую команду: wmic useraccount where name="USER" get sid (вместо «USER» подставьте имя пользователя).[1]
  5. Изображение с названием Find a Users SID on Windows Step 5

    5

    Нажмите Enter. Идентификатор безопасности — это длинная цепочка чисел, которая отобразится справа от каждого имени пользователя.

    Реклама

Об этой статье

Эту страницу просматривали 3869 раз.

Была ли эта статья полезной?

Операционная система Windows для идентификации использует специальный идентификатор безопасности (Security Identifier, SID), который присваивается каждой учетной записи пользователя (а также компьютера или группы) при ее создании. В отличие от имени каждый SID уникален, что позволяет системе однозначно идентифицировать пользователя. Поэтому операционная система оперирует именно SID-ами и использует их для контроля доступа к различным ресурсам — принтерам, файлам и папкам и т.п.

Примечание. Говоря об уникальности SID, надо сделать одну оговорку. В Windows существуют так называемые встроенные (BuiltIn) учетные записи, такие как Administrator или Guest. SID-ы этих записей одинаковы в каждом экземпляре Windows вне зависимости от версии ОС. Это дает администратору возможность более-менее  централизованно управлять доступом при отсутствии доменной структуры.

SID для локальных учетных записей храниться базе данных диспетчера учетных записей (Security Account Manager, SAM) на локальном компьютере, для доменных — в базе Active Directory. И сегодня речь пойдет о том, как можно узнать SID пользователя по его имени и наоборот, как выяснить имя пользователя по его SID.

Whoami

Когда требуется посмотреть SID текущего пользователя, то проще всего воспользоваться утилитой whoami. Для этого надо открыть консоль cmd и выполнить команду:

whoami /user

узнаем SID пользователя с помощью whoami

WMIC

В том случае, когда необходимо узнать SID произвольного пользователя, можно воспользоваться Windows Management Instrumentation (WMI). Один из инструментов для работы с WMI — утилита WMIC. Так например, узнать SID пользователя Kirill можно такой командой:

wmic useraccount where name=′Kirill′ get sid

А можно и наоборот, выяснить имя пользователя по его SID:

wmic useraccount where sid=′S-1-5-21-4178654016-3479515840-607560339-1000′ get name

узнаем SID локального пользователя с помощью wmic

Дополнительно в WMI-запросе можно указать имя компьютера (для локального) или домена (для доменного пользователя). Например эта команда выведет SID локального администратора:

wmic useraccount where (name=′administrator′ and domain=′%computername%′) get sid

а эта — доменного:

wmic useraccount where (name=′administrator′ and domain=′contoso′) get sid

узнаем SID локального иили доменного администратора с помощью wmic

Для обычного пользователя все также, узнаем SID по имени:

wmic useraccount where (name=′kirill′ and domain=′contoso′) get sid

и имя по SID:

wmic useraccount where (sid=′S-1-5-21-2404695605-4156858507-746700462-1001′ and domain=′contoso′) get name

узнаем SID доменного пользователя с помощью wmic

Примечание. В запросе вместо имени компьютерадомена можно использовать переменные %computername% и %userdomain%.

PowerShell и WMI

PowerShell также позволяет работать с WMI. Для примера обратимся к классу win32_userAccount и выведем SID доменного:

([wmi]″win32_userAccount.Domain=′contoso′, Name=′Kirill′″).sid

и локального пользователя:

([wmi]″win32_userAccount.Domain=′wks1′, Name=′Petya′″).sid

Также вместо имени компьютера  и домена можно указывать переменные окружения $env:computername и $env:userdomain, например:

([wmi]″win32_userAccount.Domain=$env:computername, Name=′Petya′″).sid

узнаем SID пользователя с помощью wmi

Для обратной операции (узнать имя пользователя по SID) нам потребуется использовать свойство SID класса win32_SID. Например:

[wmi]″win32_SID.SID=′S-1-5-21-4178654016-3479515840-607560339-1002′″).AccountName

узнаем имя пользователя по его SID с помощью wmi

Как вариант, для работы с WMI можно использовать командлет Get-WmiObject (или Get-CimInstance). Например так мы узнаем SID пользователя:

(Get-WmiObject -Class win32_userAccount -Filter ″name=′Kirill′ and domain=′Contoso′″).SID

узнаем SID пользователя с помощью Get-WmiObject

а так его имя:

(Get-WmiObject -Class win32_userAccount -Filter ″SID=′S-1-5-21-2404695905-416858507-746700462-1001′″).Name

узнаем имя пользователя по SID с помощью Get-WmiObject

PowerShell и .NET

Также узнать SID пользователя можно с помощью .NET класса System.Security.Principal.NTAccount. Этот класс используется для представления пользователя или группы. Для получения SID локального пользователя надо создать новый объект этого класса и передать ему в виде параметра имя пользователя, а затем с помощью метода Translate перевести объект пользователя в объект класса System.Security.Principal.SecurityIdentifier, который предназначен для представления SID пользователя или группы:

$User = New-Object System.Security.Principal.NTAccount(″Kirill″)
$SID = $User.Translate([System.Security.Principal.SecurityIdentifier])
$SID.Value

Для доменного пользователя процедура идентична, только в виде параметра передаются имя пользователя и имя домена:

$User = New-Object System.Security.Principal.NTAccount(″Contoso″,″Kirill″)
$SID = $User.Translate([System.Security.Principal.SecurityIdentifier])
$SID.Value

узнаем SID пользователя с помощью .Net

Для обратной процедуры получения имени по SID делаем наоборот — сначала создаем объект класса System.Security.Principal.SecurityIdentifier и передаем ему в виде параметра SID пользователя, а затем переводим его в объект класса System.Security.Principal.NTAccount и выводим свойство Value, содержащее имя пользователя:

$SID = New-Object System.Security.Principal.NTAccount(″S-1-5-21-4178654016-3479515840-607560339-1000″)
$User = $SID.Translate([System.Security.Principal.NTAccount])
$User.Value

узнаем имя пользователя по SID с помощью .Net

PsGetSid

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

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

Для примера запросим SID пользователя по его имени:

psgetsid wks10Kirill

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

psgetsid S-1-5-21-438167859-634674341-1098546566-1001

узнаем имя пользователя по SID с помощью psgetsid

Понравилась статья? Поделить с друзьями:
  • Как найти на карте мордовию
  • Как найти точку gps на карте
  • Как правильно найти производящее слово
  • Как найти друга темнокожего
  • Как найти скорость записать формулу