Compartir a través de


Función SeCreateClientSecurity (ntifs.h)

La rutina SeCreateClientSecurity inicializa una estructura de contexto de cliente de seguridad con la información necesaria para llamar a SeImpersonateClientEx.

Sintaxis

NTSTATUS SeCreateClientSecurity(
  [in]  PETHREAD                     ClientThread,
  [in]  PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos,
        BOOLEAN                      RemoteSession,
  [out] PSECURITY_CLIENT_CONTEXT     ClientContext
);

Parámetros

[in] ClientThread

Puntero al subproceso del cliente que se va a suplantar.

[in] ClientSecurityQos

Puntero a una estructura de SECURITY_QUALITY_OF_SERVICE asignada por el autor de la llamada que indica qué forma de suplantación se va a realizar.

RemoteSession

Establezca en TRUE si el servidor de la solicitud del cliente es remoto.

[out] ClientContext

Puntero a una estructura de SECURITY_CLIENT_CONTEXT asignada por el autor de la llamada que se va a inicializar.

Valor devuelto

Código devuelto Descripción
STATUS_SUCCESS El contexto del cliente de seguridad se inicializó correctamente.
STATUS_BAD_IMPERSONATION_LEVEL El cliente que se va a suplantar actualmente es suplantar a un cliente propio y uno de los siguientes es true: (1) El token efectivo del cliente no se puede pasar para que lo use otro servidor, ya que su nivel de suplantación es SecurityAnonymous o SecurityIdentification. (2) ServerIsRemote es TRUE, y el subproceso de cliente suplanta a su cliente en un nivel distinto de SecurityDelegation.

Observaciones

SeCreateClientSecurity inicializa un bloque de contexto de seguridad de cliente para representar el contexto de seguridad de un cliente.

Si el miembro ContextTrackingMode de ClientSecurityQos está establecido en SECURITY_DYNAMIC_TRACKING y ServerIsRemote se establece en FALSE, SeCreateClientSecurity usa una referencia al token efectivo del cliente. De lo contrario, SeCreateClientSecurity crea una copia del token del cliente.

Cada llamada a SeCreateClientSecurity debe coincidir con una llamada posterior a SeDeleteClientSecurity.

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

seDeleteClientSecurity

SeImpersonateClientEx