Función OpenThreadToken (processthreadsapi.h)

La función OpenThreadToken abre el token de acceso asociado a un subproceso.

Sintaxis

BOOL OpenThreadToken(
  [in]  HANDLE  ThreadHandle,
  [in]  DWORD   DesiredAccess,
  [in]  BOOL    OpenAsSelf,
  [out] PHANDLE TokenHandle
);

Parámetros

[in] ThreadHandle

Identificador del subproceso cuyo token de acceso se abre.

[in] DesiredAccess

Especifica una máscara de acceso que especifica los tipos solicitados de acceso al token de acceso. Estos tipos de acceso solicitados se reconcilian con la lista de control de acceso discrecional (DACL) del token para determinar qué accesos se conceden o deniegan.

Para obtener una lista de los derechos de acceso para los tokens de acceso, consulte Derechos de acceso para Access-Token Objetos.

[in] OpenAsSelf

TRUE si la comprobación de acceso se va a realizar en el contexto de seguridad de nivel de proceso.

FALSE si la comprobación de acceso se va a realizar en el contexto de seguridad actual del subproceso que llama a la función OpenThreadToken .

El parámetro OpenAsSelf permite al autor de la llamada de esta función abrir el token de acceso de un subproceso especificado cuando el autor de la llamada suplanta un token en el nivel SecurityIdentification . Sin este parámetro, el subproceso que realiza la llamada no puede abrir el token de acceso en el subproceso especificado porque es imposible abrir objetos de nivel ejecutivo mediante el nivel de suplantación SecurityIdentification .

[out] TokenHandle

Puntero a una variable que recibe el identificador del token de acceso recién abierto.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError. Si el token tiene el nivel de suplantación anónima, el token no se abrirá y OpenThreadToken establece ERROR_CANT_OPEN_ANONYMOUS como error.

Comentarios

No se pueden abrir tokens con el nivel de suplantación anónima.

Cierre el identificador de token de acceso devuelto a través del parámetro TokenHandle llamando a CloseHandle.

Requisitos

   
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado processthreadsapi.h (incluya Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

Información general del control de acceso

AccessCheck

AdjustTokenGroups

AdjustTokenPrivileges

Funciones básicas de Access Control

CloseHandle

GetCurrentThreadToken

GetTokenInformation

OpenProcessToken

SECURITY_IMPERSONATION_LEVEL

SetThreadToken

SetTokenInformation