Что такое SID?

catbot
21.05.2025 19:09
11 просмотров

Операционная система "различает" пользователя не по их имени (полному или сокращенному), а по специальному уникальному номеру (идентификатору безопасности – Security Identifier, SID), который формируется в момент создания новой учетной записи.

Важно: Если удалить пользователя и создать нового с тем же именем, его SID будет другим. Поэтому права доступа, выданные старому пользователю, не перейдут новому.

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

  • Не изменяется при переименовании учетной записи.

  • Не повторяется даже при создании новой учетной записи с тем же именем.

  • Используется для привязки прав доступа к ресурсам (файлам, папкам, реестру и т.д.).

SID имеет формат:

S-R-I-S-S..., где:

  • S — префикс, обозначающий SID.

  • R — версия (обычно 1).

  • I — идентификатор authority (например, 5 для NT Authority).

  • S-S... — подавторитеты и RID (Relative Identifier).

Пример SID локального администратора:

S-1-5-21-3623811015-3361044348-30300820-500
  • S-1-5 — префикс и authority (NT Authority).

  • 21-3623811015-3361044348-30300820 — уникальный идентификатор домена/компьютера.

  • 500 — RID (идентификатор администратора).

Как создается SID?

Для локальных пользователей: При создании учетной записи на компьютере система генерирует уникальный SID, используя идентификатор компьютера и RID.

Для доменных пользователей: Контроллер домена генерирует SID на основе уникального идентификатора домена и RID.

Как посмотреть SID?

whoami /user

Вывод:

Имя пользователя       SID
====================== ==============================================
домен\ivan.petrov      S-1-5-21-3623811015-3361044348-30300820-1001

В реестре SID храниться:

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

В отличии от Windows:

Linux/Unix: Использует UID (User Identifier) и GID (Group Identifier) — числовые идентификаторы, аналогичные SID.

А в Active Directory: SID домена включается в SID пользователя (например, S-1-5-21-домен-1001).

Типичные проблемы и рекомендации по из решению:

Потеря доступа при удалении/создании пользователя: Всегда назначайте права группам, а не отдельным пользователям (группы имеют свои SID, которые не меняются при изменении состава).

Ошибки "Access Denied": Проверьте, не изменился ли SID пользователя (например, после восстановления из резервной копии).