Функция ImpersonateSelf (securitybaseapi.h)
Функция ImpersonateSelf получает маркер доступа , который олицетворяет контекст безопасности вызывающего процесса. Маркер назначается вызывающему потоку.
Синтаксис
BOOL ImpersonateSelf(
[in] SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);
Параметры
[in] ImpersonationLevel
Указывает SECURITY_IMPERSONATION_LEVEL перечислимый тип, предоставляющий уровень олицетворения нового токена.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Функция ImpersonateSelf используется для таких задач, как включение привилегий для одного потока, а не для всего процесса или изменение списка управления доступом по умолчанию (DACL) для одного потока.
Сервер может вызывать функцию RevertToSelf после завершения олицетворения.
Для успешного выполнения этой функции daCL, защищающий маркер процесса, должен предоставить TOKEN_DUPLICATE право на себя.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | securitybaseapi.h (включая Windows.h) |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |
См. также раздел
Функции контроль доступа клиента и сервера