ImpersonateAnonymousToken-Funktion (securitybaseapi.h)
Mit der Funktion ImpersonateAnonymousToken kann der angegebene Thread die Identität des anonymen Anmeldetokens des Systems annehmen. Um sicherzustellen, dass ein Token mit dem Konzept des anonymen Zugriffs des Betriebssystems übereinstimmt, sollte diese Funktion aufgerufen werden, bevor versucht wird, auf dem Remoteserver ein anonymes Token zu generieren.
Syntax
BOOL ImpersonateAnonymousToken(
[in] HANDLE ThreadHandle
);
Parameter
[in] ThreadHandle
Ein Handle für den Thread zum Annehmen der Identität des anonymen Anmeldetokens des Systems. Das Threadhandle muss über das THREAD_IMPERSONATE Zugriffsrecht verfügen, damit der Thread die Identität des anonymen Anmeldetokens des Systems annehmen kann.
Um diesen Zugriff zu gewähren, muss der Thread durch Aufrufen von OpenThread mit dem gewünschten Zugriffsrecht für THREAD_IMPERSONATE geöffnet werden.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Ein Fehler von ACCESS_DENIED kann darauf hindeuten, dass das Token für einen eingeschränkten Prozess gilt. Verwenden Sie OpenProcessToken und IsTokenRestricted , um zu überprüfen, ob der Prozess eingeschränkt ist. ACCESS_DENIED wird auch zurückgegeben, wenn das Threadhandle keinen richtigen Zugriff auf THREAD_IMPERSONATE hat.
Hinweise
Anonyme Token enthalten die Gruppen-SID "Jeder" nicht, es sei denn, der Systemstandard wurde durch Festlegen des registrierungswerts HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\EveryoneIncludesAnonymous auf DWORD=1 überschrieben.
Um den Identitätswechsel abzubrechen, rufen Sie RevertToSelf auf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | securitybaseapi.h (Einschließen von Windows.h) |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |