IHostSecurityManager::OpenThreadToken — Metoda
Otwiera uznaniowy token dostępu skojarzony z aktualnie wykonywanym wątkiem.
Składnia
HRESULT OpenThreadToken (
[in] DWORD dwDesiredAccess,
[in] BOOL bOpenAsSelf,
[out] HANDLE *phThreadToken
);
Parametry
dwDesiredAccess
[in] Maska wartości dostępu, które określają żądane typy dostępu do tokenu wątku. Te wartości są definiowane w funkcji Win32 OpenThreadToken
. Żądane typy dostępu są uzgadniane z uznaniową listą kontroli dostępu (DACL) tokenu w celu określenia typów dostępu w celu udzielenia lub odmowy.
bOpenAsSelf
[in] true
aby określić, że należy przeprowadzić kontrolę dostępu przy użyciu kontekstu zabezpieczeń procesu dla wątku wywołującego; false
aby określić, że należy przeprowadzić kontrolę dostępu przy użyciu kontekstu zabezpieczeń dla samego wątku wywołującego. Jeśli wątek personifikuje klienta, kontekstem zabezpieczeń może być proces klienta.
phThreadToken
[out] Wskaźnik do nowo otwartego tokenu dostępu.
Wartość zwracana
HRESULT | Opis |
---|---|
S_OK | OpenThreadToken zwrócone pomyślnie. |
HOST_E_CLRNOTAVAILABLE | Środowisko uruchomieniowe języka wspólnego (CLR) nie zostało załadowane do procesu lub clR jest w stanie, w którym nie może uruchomić kodu zarządzanego ani pomyślnie przetworzyć wywołania. |
HOST_E_TIMEOUT | Upłynął limit czasu wywołania. |
HOST_E_NOT_OWNER | Obiekt wywołujący nie jest właścicielem blokady. |
HOST_E_ABANDONED | Zdarzenie zostało anulowane, gdy zablokowany wątek lub światłowod czekał na nie. |
E_FAIL | Wystąpił nieznany katastrofalny błąd. Gdy metoda zwraca E_FAIL, clR nie będzie już można jej używać w ramach tego procesu. Kolejne wywołania metod hostingu zwracają HOST_E_CLRNOTAVAILABLE. |
Uwagi
IHostSecurityManager::OpenThreadToken
zachowuje się podobnie do odpowiadającej mu funkcji Win32 o tej samej nazwie, z tą różnicą, że funkcja Win32 umożliwia wywołującym przekazanie uchwytu do dowolnego wątku, a jednocześnie IHostSecurityManager::OpenThreadToken
otwiera tylko token skojarzony z wywołującym wątkiem.
Typ HANDLE
nie jest zgodny ze standardem COM, czyli jego rozmiar jest specyficzny dla systemu operacyjnego i wymaga niestandardowego marshallingu. W związku z tym ten token jest używany tylko w ramach procesu między clR i hostem.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MSCorEE.h
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
wersje .NET Framework: dostępne od wersji 2.0