Partilhar via


Método IHostSecurityManager::OpenThreadToken

Abre o token de acesso discricionário associado ao thread atualmente em execução.

Sintaxe

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

Parâmetros

dwDesiredAccess
[in] Uma máscara de valores de acesso que especifica os tipos de acesso pedidos ao token de thread. Estes valores são definidos na função Win32 OpenThreadToken . Os tipos de acesso pedidos são reconciliados com a lista de controlo de acesso discricionário (DACL) do token para determinar que tipos de acesso conceder ou negar.

bOpenAsSelf
[in] true para especificar que a verificação de acesso deve ser efetuada com o contexto de segurança do processo para o thread de chamada; false para especificar que a verificação de acesso deve ser efetuada com o contexto de segurança do próprio thread de chamadas. Se o thread estiver a representar um cliente, o contexto de segurança pode ser o de um processo de cliente.

phThreadToken
[fora] Um ponteiro para o token de acesso recentemente aberto.

Devolver Valor

HRESULT Description
S_OK OpenThreadToken devolvido com êxito.
HOST_E_CLRNOTAVAILABLE O runtime de linguagem comum (CLR) não foi carregado para um processo ou o CLR está num estado em que não pode executar código gerido ou processar a chamada com êxito.
HOST_E_TIMEOUT A chamada excedeu o limite de tempo.
HOST_E_NOT_OWNER O autor da chamada não é o proprietário do bloqueio.
HOST_E_ABANDONED Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera do mesmo.
E_FAIL Ocorreu uma falha catastrófica desconhecida. Quando um método devolve E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE.

Observações

IHostSecurityManager::OpenThreadToken comporta-se de forma semelhante à função Win32 correspondente com o mesmo nome, exceto que a função Win32 permite que o autor da chamada transmita uma alça para um thread arbitrário, enquanto IHostSecurityManager::OpenThreadToken abre apenas o token associado ao thread de chamada.

O HANDLE tipo não é compatível com COM, ou seja, o respetivo tamanho é específico do sistema operativo e requer uma ordenação personalizada. Assim, este token destina-se a ser utilizado apenas no processo, entre o CLR e o anfitrião.

Requisitos

Plataformas: Veja Requisitos do Sistema.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso no MSCorEE.dll

.NET Framework Versões: Disponível desde 2.0

Ver também