Функция SeCaptureSubjectContext (ntifs.h)
SeCaptureSubjectContext принимает snapshot контекста вызывающего потока для проверки доступа и аудита. См. также SeCaptureSubjectContextEx.
Синтаксис
void SeCaptureSubjectContext(
[out] PSECURITY_SUBJECT_CONTEXT SubjectContext
);
Параметры
[out] SubjectContext
[out] Указатель на непрозрачную структуру, выделенную вызывающим объектом SECURITY_SUBJECT_CONTEXT . SeCaptureSubjectContext записывает snapshot профиля безопасности вызывающего потока, который содержит ссылки на маркеры доступа в этой структуре. Драйверы не должны изменять или пытаться напрямую обращаться к каким-либо членам этой структуры для принятия решений по обеспечению безопасности. Вместо этого, чтобы избежать проблем с безопасностью при авторизации, передайте эту непрозрачную структуру в вызовах SeAccessCheck или SePrivilegeCheck.
Возвращаемое значение
None
Remarks
Перед выполнением таких служб, как проверка доступа или создание сообщений аудита, необходимо вызвать SeCaptureSubjectContext . Это необходимо для обеспечения единообразного контекста безопасности для таких процедур:
После выполнения проверки доступа, проверки привилегий и создания аудита как можно скорее отпустите захваченный контекст, вызвав SeReleaseSubjectContext.
SeCaptureSubjectContext при необходимости блокирует маркеры, принимая snapshot контекста безопасности вызывающего потока.
При возврате ссылки на маркеры доступа содержатся в структуре, на которую указывает SubjectContext . Содержимое этой структуры может измениться. Чтобы избежать этого, вызовите SeLockSubjectContext , чтобы заблокировать основной маркер доступа и все маркеры олицетворения, связанные со структурой. Например, при использовании подпрограмм, которые несколько раз запрашивают сведения о маркерах в одном контексте безопасности (например, перечисленные ранее), заблокируйте контекст субъекта с помощью SeLockSubjectContext , чтобы получить согласованные результаты.
Дополнительные сведения о безопасности и управлении доступом см. в статье Модель безопасности Windows для разработчиков драйверов и в документации по этим темам в windows SDK.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h, Wdm.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |