Функция SeCreateClientSecurityFromSubjectContext (ntifs.h)
Программа SeCreateClientSecurityFromSubjectContext извлекает маркер доступа для контекста субъекта безопасности и использует результат для инициализации контекста клиента безопасности с информацией, необходимой для вызова SeImpersonateClientEx.
Синтаксис
NTSTATUS SeCreateClientSecurityFromSubjectContext(
[in] PSECURITY_SUBJECT_CONTEXT SubjectContext,
[in] PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos,
[in] BOOLEAN ServerIsRemote,
[out] PSECURITY_CLIENT_CONTEXT ClientContext
);
Параметры
[in] SubjectContext
Указатель на контекст субъекта безопасности клиента, который должен быть олицетворен.
[in] ClientSecurityQos
Указатель на выделенную вызывающим SECURITY_QUALITY_OF_SERVICE структуру, указывающую, какая форма олицетворения должна выполняться.
[in] ServerIsRemote
Установите значение TRUE, если сервер запроса клиента удален.
[out] ClientContext
Указатель на инициализированную структуру, выделенную вызывающим объектом, SECURITY_CLIENT_CONTEXT.
Возвращаемое значение
SeCreateClientSecurityFromSubjectContext возвращает STATUS_SUCCESS при успешной инициализации контекста клиента безопасности.
Он возвращает STATUS_BAD_IMPERSONATION_LEVEL, когда клиент, который будет олицетворен в настоящее время олицетворение клиента собственным, и одно из следующих значений имеет значение true:
Действующий маркер клиента нельзя передать для использования другим сервером, так как его уровень олицетворения SecurityAnonymous или SecurityIdentification.
ServerIsRemote имеет значение TRUE, и клиентский поток олицетворяет свой клиент, отличный от уровня SecurityDelegation.
Замечания
SeCreateClientSecurityFromSubjectContext инициализирует блок контекста безопасности клиента для представления контекста безопасности клиента.
Если для элемента ContextTrackingModeClientSecurityQos задано значение SECURITY_DYNAMIC_TRACKING и ServerIsRemote задано значение false FALSE, SeCreateClientSecurityFromSubjectContext использует ссылку на действующий токен клиента. В противном случае SeCreateClientSecurityFromSubjectContext создает копию маркера клиента.
Каждый вызов SeCreateClientSecurityFromSubjectContext должен соответствовать последующему вызову SeDeleteClientSecurity.
Дополнительные сведения о безопасности и управлении доступом см. в модели безопасности Windows для разработчиков драйверов и документации по этим разделам в пакете SDK для Windows.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 |
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
См. также
[SECURITY_SUBJECT_CONTEXT/(/windows-hardware/drivers/kernel/eprocess##security_subject_context)
[SeDeleteClientSecurity/(nf-ntifs-sedeleteclientsecurity.md)
[SeImpersonateClientEx/(nf-ntifs-seimpersonateclientex.md)