Función SeCaptureSubjectContextEx (ntifs.h)
SeCaptureSubjectContextEx toma una instantánea del contexto de seguridad del subproceso que realiza la llamada para la validación y auditoría de acceso.
Sintaxis
void SeCaptureSubjectContextEx(
PETHREAD Thread,
PEPROCESS Process,
PSECURITY_SUBJECT_CONTEXT SubjectContext
);
Parámetros
Thread
[in] Subproceso desde el que se va a capturar el token del subproceso. Este parámetro es opcional. Cuando es NULL, SeCaptureSubjectContextEx no captura un token de suplantación.
Process
[in] Puntero al identificador del proceso desde el que se va a capturar el token principal.
SubjectContext
[out] Puntero a una estructura de SECURITY_SUBJECT_CONTEXT asignada por el llamador opaco. SeCaptureSubjectContextEx 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 SeCaptureSubjectContextEx 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.
SeCaptureSubjectContextEx 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 Vista |
Encabezado | ntifs.h |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |