Перейти к содержимому

Как узнать id пользователя windows

  • автор:

Как узнать имя пользователя в Windows 10

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

Узнаём имя пользователя в меню «Пуск»

Наиболее простой способ узнать имя пользователя — открыть меню «Пуск» и кликнуть на кнопку «Развернуть» — иконку с тремя горизонтальными полосками. Ниже Вы увидите имя пользователя, авторизованного в системе в данный момент.

Имя пользователя в меню «Пуск» в Windows 10

Кликаем на кнопку «Развернуть» в меню «Пуск»

Узнаём имя текущего пользователя через «Параметры Windows»

  1. С помощью горячих клавиш Windows + I открываем окно «Параметры Windows» и переходим в раздел «Учетные записи».

Окно «Параметры Windows» в Windows 10

Открываем раздел «Учетные записи» в «Параметрах Windows»

Окно «Учетные записи» в параметрах Windows 10

Смотрим сведения о текущей учетной записи

Узнаём имя текущего пользователя в приложении «Сведения о системе»

Посмотреть имя текущего пользователя можно в классическом приложении Windows 10 «Сведения о системе».

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

Поиск приложения «Сведения о системе» в Windows 10

Находим приложение «Сведения о системе»

Окно приложения «Сведения о системе» в Windows 10

Имя пользователя в окне «Сведения о системе»

Узнаём имя пользователя в «Диспетчере задач»

  1. Нажимаем комбинацию клавиш Ctrl + Shift + Esc для запуска «Диспетчера задач».

Окно «Диспетчер задач» в Windows 10

Открываем вкладку «Пользователи»

Смотрим имена пользователей в «Панели управления»

  1. Снова воспользуемся системным поиском, чтобы найти «Панель управления» — кликаем на иконку лупы в панели задач и печатаем название приложения.

Поиск «Панели управления» в Windows 10

Ищем «Панель управления»

«Панель управления» в Windows 10

Открываем раздел «Учетные записи пользователей»

Раздел «Учетные записи пользователей» в панели управления Windows 10

Кликаем на «Управление другой учетной записью», чтобы увидеть всех пользователей

Смотрим имена пользователей через командную строку

Для тех, кто не ищет лёгких путей, �� есть возможность посмотреть список всех пользователей в системе через командую строку.

    Откроем контекстное меню кнопки «Пуск» с помощью правой кнопки мыши или сочетания клавиш Windows + X и запустим утилиту «PowerShell» от имени администратора.

«Windows PowerShell» в контекстном меню кнопки «Пуск» в Windows 10

Запускаем «PowerShell» от имени администратора

Окно «Администратор: Windows PowerShell» в Windows 10

Выполняем команду «net user»

Теперь вы в курсе, где посмотреть список всех учетных записей в Windows 10, а также имя текущего пользователя системы.

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

Как узнать SID пользователя

Админ в маленьком городе

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

Сюжет, наверное, знаком многим админам. в какой-то момент тебе говорят что на сервере пропала какая-то папка, а возможно и не одна, причем пропала сама собой, никто не трогал. В чудесные исчезновения я давно не верю, и начинаются поиски пропажи. Алгоритм уже отработан — для начала смотрим на наличие скрытых файлов в каталоге, где жила потеряшка, проходим там прогой R-Studio и если ничего не находится, то скорее всего и не удалялось, а просто перемещено. и возможно в корзину. Круг подозреваемых обычно ограничен, но иногда быстрее в мусорках пользователей порыться тем же Total Commander, включив отображение системных файлов. Корзины пользователей имеют уникальный идентификатор и лежат в общем каталоге $RECYCLE.BIN на дисках. Вот мы и подобрались к главной теме.

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

Стоит заметить, что, на самом деле, не все SID уникальны, и у встроенных учетных записей (Администратор, Гость), они постоянны. SID-ы локальных учёток хранятся в базе данных диспетчера учетных записей SAM (Security Account Manager), для доменных, соответсвенно в Active Directory.

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

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

whoami /user
Сведения о пользователе ---------------- Пользователь SID ================= =========================================== srv\администратор S-1-5-21-1717474732-638561625-496602587-500

Как видите, я выполнил вход под админом, но это не интересно. Гораздо полезнее узнать SID произвольного пользователя. Для этого воспользуемся утилитой WMIC из Windows Management Instrumentation (WMI).

Посмотрим SID пользователя Kirill можно такой командой:

wmic useraccount where name='test_user' get sid
SID S-1-5-21-1717474732-638561625-496602587-1004

Определение имени пользователя по SID (обратная процедура) будет выглядеть так:

wmic useraccount where sid='S-1-5-21-1717474732-638561625-496602587-1004' get name

Аналогичные действия можно проводить и на PowerShell, но я в нём не силён, инфа есть в сети, кто заинтересовался данной темой почитает, для моей задачи было достаточно и этого. Как и предполагалось, потерянная папка нашлась у одного из пользователей в корзине.

Подписывайтесь на канал
Яндекс.Дзен и узнавайте первыми о новых материалах, опубликованных на сайте.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

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

date

06.10.2022

user

itpro

directory

Active Directory, PowerShell, Windows 10, Windows Server 2019

comments

комментариев 10

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

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

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

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

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

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

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

  • S-1-5-32-544 – встроенная группу Administrators
  • S-1-5-32-545 – локальные пользователи

В 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.

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 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 | 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): Но ее придется скачивать и устанавливать на каждый компьютер вручную.

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

$user=(Get-LocalUser Administrator).sid
$user -replace «.$»

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

Параметр IncludeDeletedObjects позволяет искать по удаленным объектам в корзине Active Directory.

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

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

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Читайте далее в разделе Active Directory PowerShell Windows 10 Windows Server 2019

page

page

page

Get-ADUser: получение информации о пользователях Active Directory из PowerShell

Windows LAPS: Управление паролями локальных администраторов на компьютерах в AD

Настройка параметров прокси-сервера в Windows с помощью групповых политик

Несколько способов получить sid пользователя Windows

Несколько способов получить sid пользователя Windows

В операционных системах семейства Windows каждый пользователь имеет свой уникальный идентификационный номер, он же sid (сокращение от Security ID). Он используется для контроля доступа к различным ресурсам (файлам, реестр, устройства и т. д.). Ниже несколько примеров того, как можно узнать sid пользователя/пользователей через командную строку.

Получаем sid пользователя

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

wmic useraccount where name="имя_пользователя" get sid

где «имя_пользователя» нужно заменить на имя пользователя. А так же можно провести поиск наоборот — получить имя пользователя по sid:

wmic useraccount where sid="sid_пользователя" get name

Если нужно получить sid пользователя, под которым работаете, то можно выполнить следующую команду:

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

Для получения sid текущего пользователя домена Active Directory нужно выполнить другую команду:

whoami /user

В домене Active Directory так же можно провести поиск sid’ов пользователей, которые никогда не логинились на компьютере:

wmic useraccount where (name="имя_пользователя" and domain="имя домена") get name,sid

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *