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

Consulte también

SECURITY_SUBJECT_CONTEXT

SeLockSubjectContext

SePrivilegeCheck

SeQueryAuthenticationIdToken

SeQueryInformationToken

SeQuerySubjectContextToken

SeReleaseSubjectContext

SeUnlockSubjectContext