Функция PsReferenceImpersonationToken (ntifs.h)
Подпрограмма PsReferenceImpersonationToken увеличивает количество ссылок маркера олицетворения для указанного потока.
Синтаксис
PACCESS_TOKEN PsReferenceImpersonationToken(
[in, out] PETHREAD Thread,
[out] PBOOLEAN CopyOnOpen,
[out] PBOOLEAN EffectiveOnly,
[out] PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);
Параметры
[in, out] Thread
Адрес потока, для которого необходимо увеличить число ссылок маркера олицетворения.
[out] CopyOnOpen
Указатель на логическую переменную, выделенную вызывающим объектом. При возврате этот параметр получает значение TRUE, если маркер не может быть открыт напрямую. В этом случае маркер должен быть дублирован, а вместо него следует использовать повторяющийся маркер. Если маркер можно открыть напрямую, этот параметр получает значение FALSE.
[out] EffectiveOnly
Указатель на логическую переменную, выделенную вызывающим объектом. При возврате этот параметр получает значение FALSE, если потоку разрешено включать группы и привилегии, которые в настоящее время отключены в контексте безопасности клиента, в противном случае — TRUE.
[out] ImpersonationLevel
Указатель на переменную SECURITY_IMPERSONATION_LEVEL, выделенную вызывающим объектом. При возврате этот параметр получает значение, указывающее уровень олицетворения, на котором потоку разрешен доступ к маркеру.
Возвращаемое значение
PsReferenceImpersonationToken возвращает указатель на токен олицетворения для заданного потока. Если поток в настоящее время не олицетворение клиента, возвращается указатель NULL.
Комментарии
Если поток в настоящее время олицетворение клиента, PsReferenceImpersonationToken увеличивает количество ссылок маркера олицетворения и возвращает указатель на маркер. Если возвращаемый указатель не равен NULL, количество ссылок маркера олицетворения должно быть уменьшено путем вызова одной из следующих функций:
- ObDereferenceObject для Windows 2000
- PsDereferenceImpersonationToken для Microsoft Windows XP или более поздней версии
Дополнительные сведения о безопасности и управлении доступом см. в статье Модель безопасности Windows для разработчиков драйверов и в документации по этим темам в Windows SDK.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая FltKernel.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Правила соответствия DDI | HwStorPortProhibitedDIs(storport) |