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 la estructura 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; en caso contrario, FALSE .

Comentarios

Un token de acceso contiene una lista de los privilegios mantenidos por la cuenta asociada al token. Estos privilegios se pueden habilitar o deshabilitar; la mayoría están deshabilitadas de forma predeterminada. SePrivilegeCheck solo comprueba si hay 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 Value
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Consulte también

LUID_AND_ATTRIBUTES

PRIVILEGE_SET

SECURITY_SUBJECT_CONTEXT

SeAccessCheck

SeAppendPrivileges

SeFreePrivileges

SeQueryInformationToken

SeSinglePrivilegeCheck