IHostSecurityManager::OpenThreadToken, metod
Öppnar den diskretionära åtkomsttoken som är associerad med den tråd som körs just nu.
Syntax
HRESULT OpenThreadToken (
[in] DWORD dwDesiredAccess,
[in] BOOL bOpenAsSelf,
[out] HANDLE *phThreadToken
);
Parametrar
dwDesiredAccess
[in] En mask med åtkomstvärden som anger de begärda typerna av åtkomst till trådtoken. Dessa värden definieras i funktionen Win32 OpenThreadToken
. De begärda åtkomsttyperna avstäms mot tokens DACL (Discretionary Access Control List) för att avgöra vilka typer av åtkomst som ska beviljas eller nekas.
bOpenAsSelf
[in] true
för att ange att åtkomstkontrollen ska göras med hjälp av säkerhetskontexten för processen för den anropande tråden; false
för att ange att åtkomstkontrollen ska utföras med hjälp av säkerhetskontexten för själva den anropande tråden. Om tråden personifierar en klient kan säkerhetskontexten vara en klientprocess.
phThreadToken
[ut] En pekare till den nyligen öppnade åtkomsttoken.
Returvärde
HRESULT | Description |
---|---|
S_OK | OpenThreadToken returnerades. |
HOST_E_CLRNOTAVAILABLE | CLR (Common Language Runtime) har inte lästs in i en process eller så är CLR i ett tillstånd där den inte kan köra hanterad kod eller bearbeta anropet. |
HOST_E_TIMEOUT | Tidsgränsen för samtalet överst. |
HOST_E_NOT_OWNER | Anroparen äger inte låset. |
HOST_E_ABANDONED | En händelse avbröts medan en blockerad tråd eller fiber väntade på den. |
E_FAIL | Ett okänt oåterkalleligt fel inträffade. När en metod returnerar E_FAIL kan CLR inte längre användas i processen. Efterföljande anrop till värdmetoder returnerar HOST_E_CLRNOTAVAILABLE. |
Kommentarer
IHostSecurityManager::OpenThreadToken
fungerar på liknande sätt som motsvarande Win32-funktion med samma namn, förutom att Win32-funktionen gör att anroparen kan skicka ett handtag till en godtycklig tråd, medan IHostSecurityManager::OpenThreadToken
endast öppnar den token som är associerad med den anropande tråden.
Typen HANDLE
är inte COM-kompatibel, dvs. dess storlek är specifik för operativsystemet och kräver anpassad marshalling. Denna token är därför endast avsedd för användning inom processen, mellan CLR och värden.
Krav
Plattformar: Se Systemkrav.
Huvudet: MSCorEE.h
Bibliotek: Ingår som en resurs i MSCorEE.dll
.NET Framework versioner: Tillgänglig sedan 2.0