Compartir por


IHostSecurityManager::OpenThreadToken (Método)

Abre el token de acceso discrecional asociado al subproceso que se está ejecutando actualmente.

Sintaxis

HRESULT OpenThreadToken (  
    [in]  DWORD    dwDesiredAccess,
    [in]  BOOL     bOpenAsSelf,
    [out] HANDLE   *phThreadToken  
);  

Parámetros

dwDesiredAccess
[in] Máscara de valores de acceso que especifican los tipos solicitados de acceso al token de subproceso. Estos valores se definen en la función OpenThreadToken de Win32. Los tipos de acceso solicitados se concilian con la lista de control de acceso discrecional (DACL) del token para determinar qué tipos de acceso deben concederse o denegarse.

bOpenAsSelf
[in] true para especificar que la comprobación de acceso debe realizarse con el contexto de seguridad del proceso para el subproceso de llamada; false para especificar que la comprobación de acceso debe realizarse con el contexto de seguridad para el propio subproceso de llamada. Si el subproceso suplanta a un cliente, el contexto de seguridad puede ser el de un proceso de cliente.

phThreadToken
[out] Puntero al token de acceso recién abierto.

Valor devuelto

HRESULT Descripción
S_OK OpenThreadToken se devolvió correctamente.
HOST_E_CLRNOTAVAILABLE El Common Language Runtime (CLR) no se ha cargado en un proceso o se encuentra en un estado en el que no puede ejecutar código administrado o procesar la llamada correctamente.
HOST_E_TIMEOUT Se agotó el tiempo de espera de la llamada.
HOST_E_NOT_OWNER El autor de la llamada no es el propietario del bloqueo.
HOST_E_ABANDONED Se canceló un evento mientras que una fibra o subproceso que estaba bloqueado lo estaba esperando.
E_FAIL Ocurrió un error grave desconocido. Si un método devuelve el valor E_FAIL, el CLR ya no se podrá usar en el proceso. Las llamadas que se hagan a los métodos de hospedaje posteriormente devolverán el valor HOST_E_CLRNOTAVAILABLE.

Comentarios

IHostSecurityManager::OpenThreadToken se comporta de forma similar a la función Win32 correspondiente del mismo nombre, con la excepción de que la función Win32 permite al autor de llamada pasar un identificador a un subproceso arbitrario, mientras IHostSecurityManager::OpenThreadToken que abre solo el token asociado al subproceso de llamada.

El tipo HANDLE no es compatible con COM, es decir, su tamaño es específico del sistema operativo y requiere una serialización personalizada. Por lo tanto, este token solo se usa dentro del proceso, entre el motor CLR y el host.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: MSCorEE.h

Biblioteca: incluida como recurso en MSCorEE.dll

Versiones de .NET Framework: disponible a partir de la versión 2.0

Consulte también