CAutoRevertImpersonation-Klasse
Diese Klasse stellt CAccessToken-Objekte in einen nicht identitätsfreien Zustand zurück, wenn sie außerhalb des Gültigkeitsbereichs ist.
Syntax
class CAutoRevertImpersonation
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
CAutoRevertImpersonation::CAutoRevertImpersonation | Erstellt ein CAutoRevertImpersonation Objekt |
CAutoRevertImpersonation::~CAutoRevertImpersonation | Zerstört das Objekt und stellt den Identitätswechsel des Zugriffstokens zurück. |
Öffentliche Methoden
Name | Beschreibung |
---|---|
CAutoRevertImpersonation::Attach | Automatisiert die Identitätswechselversion eines Zugriffstokens. |
CAutoRevertImpersonation::D etach | Bricht die automatische Identitätswechselversion ab. |
CAutoRevertImpersonation::GetAccessToken | Ruft das dem Objekt zugeordnete Zugriffstoken ab. |
Hinweise
Ein Zugriffstoken ist ein Objekt, das den Sicherheitskontext eines Prozesses oder Threads beschreibt und jedem Benutzer zugewiesen wird, der bei einem Windows NT- oder Windows 2000-System angemeldet ist. Diese Zugriffstoken können mit der CAccessToken
Klasse dargestellt werden.
Es ist manchmal erforderlich, Zugriffstoken zu imitieren. Diese Klasse wird als Benutzerfreundlichkeit bereitgestellt, führt jedoch nicht den Identitätswechsel von Zugriffstoken durch. sie führt nur die automatische Umversion zu einem nicht identitätsfreien Zustand aus. Dies liegt daran, dass der Identitätswechsel des Tokenzugriffs auf verschiedene Arten ausgeführt werden kann.
Eine Einführung in das Zugriffssteuerungsmodell in Windows finden Sie unter Access Control im Windows SDK.
Anforderungen
Kopfzeile: atlsecurity.h
CAutoRevertImpersonation::Attach
Automatisiert die Identitätswechselversion eines Zugriffstokens.
void Attach(const CAccessToken* pAT) throw();
Parameter
tätscheln
Die Adresse des CAccessToken-Objekts , das automatisch wiederhergestellt werden soll
Hinweise
Diese Methode sollte nur verwendet werden, wenn das CAutoRevertImpersonation -Objekt mit einem NULL-Zeiger CAccessToken
erstellt wurde oder wenn Detach zuvor aufgerufen wurde. Für einfache Fälle ist es nicht erforderlich, diese Methode zu verwenden.
CAutoRevertImpersonation::CAutoRevertImpersonation
Erstellt ein CAutoRevertImpersonation
-Objekt.
CAutoRevertImpersonation(const CAccessToken* pAT) throw();
Parameter
tätscheln
Die Adresse des CAccessToken-Objekts , das automatisch wiederhergestellt werden soll.
Hinweise
Der tatsächliche Identitätswechsel des Zugriffstokens sollte getrennt und vorzugsweise vor der Erstellung eines CAutoRevertImpersonation
Objekts ausgeführt werden. Dieser Identitätswechsel wird automatisch zurückgesetzt, wenn das CAutoRevertImpersonation
Objekt den Gültigkeitsbereich überschreitet.
CAutoRevertImpersonation::~CAutoRevertImpersonation
Zerstört das Objekt und stellt den Identitätswechsel des Zugriffstokens zurück.
~CAutoRevertImpersonation() throw();
Hinweise
Gibt alle Identitätswechsel zurück, die derzeit für das CAccessToken-Objekt wirksam sind, das entweder bei der Konstruktion oder über die Attach-Methode bereitgestellt wird. Wenn keines CAccessToken
zugeordnet ist, hat der Destruktor keine Auswirkung.
CAutoRevertImpersonation::D etach
Bricht die automatische Identitätswechselversion ab.
const CAccessToken* Detach() throw();
Rückgabewert
Die Adresse des zuvor zugeordneten CAccessToken oder NULL, wenn keine Zuordnung vorhanden ist.
Hinweise
Durch Aufrufen von "Detach " wird verhindert, dass der CAutoRevertImpersonation
Identitätswechsel für das diesem Objekt zugeordnete CAccessToken-Objekt zurückgesetzt wird. CAutoRevertImpersonation
kann dann ohne Wirkung zerstört oder mit "Attach" demselben oder einem anderen CAccessToken
Objekt zugeordnet werden.
CAutoRevertImpersonation::GetAccessToken
Ruft das dem Objekt zugeordnete Zugriffstoken ab.
const CAccessToken* GetAccessToken() throw();
Rückgabewert
Die Adresse des zuvor zugeordneten CAccessToken oder NULL, wenn keine Zuordnung vorhanden ist.
Hinweise
Wenn diese Methode für die Zwecke aufgerufen wird, die die Reversion eines Identitätswechsels des CAccessToken
Objekts enthalten, sollte stattdessen die Detach-Methode verwendet werden.