Función SeCaptureSubjectContext (ntifs.h)
SeCaptureSubjectContext toma una instantánea del contexto del subproceso que realiza la llamada para la validación y auditoría de acceso. Consulte también SeCaptureSubjectContextEx.
Sintaxis
void SeCaptureSubjectContext(
[out] PSECURITY_SUBJECT_CONTEXT SubjectContext
);
Parámetros
[out] SubjectContext
[out] Puntero a una estructura de SECURITY_SUBJECT_CONTEXT asignada por el llamador opaco. SeCaptureSubjectContext escribirá la instantánea del perfil de seguridad del subproceso que llama, que contiene referencias a tokens de acceso, en esta estructura. Los controladores no deben modificar ni intentar acceder directamente a ningún miembro de esta estructura para tomar decisiones de seguridad. En su lugar, para evitar problemas de seguridad en la autorización, pase esta estructura opaca en las llamadas a SeAccessCheck o SePrivilegeCheck.
Valor devuelto
None
Observaciones
Debe llamar a SeCaptureSubjectContext antes de realizar servicios como la validación de acceso o generar mensajes de auditoría. Esto es necesario para proporcionar un contexto de seguridad coherente a rutinas como las siguientes:
Una vez realizada la validación de acceso, la comprobación de privilegios y los servicios de generación de auditoría, libere el contexto capturado lo antes posible mediante una llamada a SeReleaseSubjectContext.
SeCaptureSubjectContext bloquea los tokens según sea necesario mientras toma la instantánea del contexto de seguridad del subproceso que realiza la llamada.
A cambio, las referencias a los tokens de acceso se encuentran en la estructura a la que Apunta SubjectContext . El contenido de esa estructura puede cambiar. Para evitar esto, llame a SeLockSubjectContext para bloquear el token de acceso principal y los tokens de suplantación asociados a la estructura. Por ejemplo, al usar rutinas que consultan la información del token más de una vez en el mismo contexto de seguridad (como los que se enumeraron anteriormente), bloquee el contexto del asunto con SeLockSubjectContext para obtener resultados coherentes.
Para obtener más información sobre la seguridad y el control de acceso, consulte Modelo de seguridad de Windows para desarrolladores de controladores y la documentación sobre estos temas en Windows SDK.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h, Wdm.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |