Compartir a través de


Función SePrivilegeCheck (ntifs.h)

La rutina SePrivilegeCheck determina si un conjunto especificado de privilegios está habilitado en el token de acceso del firmante.

Sintaxis

BOOLEAN SePrivilegeCheck(
  [in, out] PPRIVILEGE_SET            RequiredPrivileges,
  [in]      PSECURITY_SUBJECT_CONTEXT SubjectSecurityContext,
  [in]      KPROCESSOR_MODE           AccessMode
);

Parámetros

[in, out] RequiredPrivileges

Puntero a una estructura de PRIVILEGE_SET. El miembro privilege de esta estructura es una matriz de estructuras LUID_AND_ATTRIBUTES. Antes de llamar a SePrivilegeCheck, use la matriz Privilege para indicar el conjunto de privilegios que se va a comprobar. Establezca el miembro control en PRIVILEGE_SET_ALL_NECESSARY si se deben habilitar todos los privilegios; o establézcalo en cero si es suficiente que se habilite cualquiera de los privilegios.

Cuando se devuelve SePrivilegeCheck, el miembro Attributes de cada estructura de LUID_AND_ATTRIBUTES se establece en SE_PRIVILEGE_USED_FOR_ACCESS si el privilegio correspondiente está habilitado.

[in] SubjectSecurityContext

Puntero al contexto de seguridad capturado del sujeto.

[in] AccessMode

Modo de acceso que se va a usar para la comprobación de privilegios. UserMode o KernelMode. Si AccessMode se establece en KernelMode, todos los privilegios se marcan como poseídos por el sujeto y SePrivilegeCheck devuelve TRUE.

Valor devuelto

SePrivilegeCheck devuelve TRUE si el sujeto mantiene todos los privilegios especificados, FALSE de lo contrario.

Observaciones

Un token de acceso contiene una lista de los privilegios que mantiene la cuenta asociada al token. Estos privilegios se pueden habilitar o deshabilitar; la mayoría están deshabilitadas de forma predeterminada. SePrivilegeCheck comprueba solo los privilegios habilitados. Para obtener una lista de todos los privilegios habilitados y deshabilitados mantenidos por un token de acceso, llame a SeQueryInformationToken.

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 Valor
de la plataforma de destino de Universal
encabezado de ntifs.h (incluya Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL PASSIVE_LEVEL

Consulte también

LUID_AND_ATTRIBUTES

PRIVILEGE_SET

SECURITY_SUBJECT_CONTEXT

SeAccessCheck

SeAppendPrivileges

SeFreePrivileges

seQueryInformationToken

SeSinglePrivilegeCheck