Я пишу приложение для Windows XP, которое дает SID пользователя.
С действительным дескриптором токена, когда я вызываю GetTokenInfomation
API с TokenUser
в качестве второго параметра, тогда каждый раз и для всей учетной записи пользователя я получаю действительный идентификатор безопасности в PTOKEN_USER
структурной переменной.
Действительный Sid => Sid is S-1-5-21-1121170692-2157880286-4158546613-1000
Здесь МПОГ => 1000
Но когда я использую NetQueryDisplayInformation
API с NET_DISPLAY_USER
в качестве информационного уровня (второй параметр), тогда я получаю NET_DISPLAY_USER
структуру как выходной параметр.
User123
- это мой единственный аккаунт с правами администратора.
С помощью структуры NET_DISPLAY_USER
, когда я вызываю LookupAccountName
API с переменной NET_DISPLAY_USER.usri1_name
в качестве имени учетной записи пользователя, тогда для учетной записи User123
я получаю SID без RID.
например.
Вот так => Сид это S-1-5-21-1121170692-2157880286-4158546613
Для другой учетной записи с той же процедурой выдает правильный SID, т. Е. SID с RID
например.
Действительный Sid => Sid равен S-1-5-21-1121170692-2157880286-4158546613-1000
Пожалуйста, предоставьте мне любые указатели для возврата SID без RID во втором случае.