Инструменты пользователя

Инструменты сайта


os:windows:common:format_sid

====== Формат SID ====== SID(security identifier) - идентификатор безопасности. Данная структура уникально идентифицирует пользователя или группу в домене Windows NT. Именно по этому идентификатору определяют пользователей. Не по имени и по паролю, а по этому идентификатору. Например, Вы создали учетную запись. Потом стерли ее. Если снова создать запись с тем же именем и паролем SID будет уже другой и права не сохраняться. SID создается при создании учетной записи. Так же его имеют и все машины в сети. Отсюда понятна проблема, которая может случиться. Если у вас один первичный контролер домена, то после выхода его из строя и инсталляции снова Windows NT Server все и всех придется заново регистрировать и давать привилегии. Все строить на простой идеи. Этот идентификатор генерируется при создании учетной записи. Повторное создание приведет к генерации нового SID и это не зависит от паролей и имен. Сам SID для программиста это структура: <code c> typedef struct _SID { BYTE Revision; BYTE SubAuthorityCount; SID_IDENTIFIER_AUTHORITY IdentifierAuthority; DWORD SubAuthority[ANYSIZE_ARRAY]; } SID; typedef PVOID PSID; </code> Хранится все это в виде двоичных значений. Но есть ряд функций преобразования: <code c> ConvertSidToStringSid - SID->String ConvertStringSidToSid - String->SID </code> В виде строки SID выглядит примерно вот так: S-1-5-21-859275398-5967894345-141239485734-1105 Строковое представление SID имеет определенный формат S-I-R-S: * S - с этой буквы начинается SID * R - число представляющее уровень контроля * I - идентификатор полномочий * S - идентификаторы подчиненных полномочий Источник: [[http://www.firststeps.ru/mfc/msdn/r.php?90|Шаг 90 - Что такое SID ?]]

Дискуссия

Enter your comment
 
os/windows/common/format_sid.txt · Последние изменения: 16.11.2009 17:26 (внешнее изменение)

Инструменты страницы