Klasa CAutoRevertImpersonation
Ta klasa przywraca obiekty CAccessToken do stanu innego niż personimating, gdy wykracza poza zakres.
class CAutoRevertImpersonation
Nazwa/nazwisko | opis |
---|---|
CAutoRevertImpersonation::CAutoRevertImpersonation | Konstruuje CAutoRevertImpersonation obiekt |
CAutoRevertImpersonation::~CAutoRevertImpersonation | Niszczy obiekt i przywraca personifikację tokenu dostępu. |
Nazwa/nazwisko | opis |
---|---|
CAutoRevertImpersonation::Attach | Automatyzuje rewersję personifikacji tokenu dostępu. |
CAutoRevertImpersonation::D etach | Anuluje automatyczną rewersję personifikacji. |
CAutoRevertImpersonation::GetAccessToken | Pobiera token dostępu skojarzony z tym obiektem. |
Token dostępu to obiekt, który opisuje kontekst zabezpieczeń procesu lub wątku i jest przydzielany każdemu użytkownikowi zalogowanego w systemie Windows NT lub Windows 2000. Te tokeny dostępu mogą być reprezentowane za pomocą CAccessToken
klasy .
Czasami konieczne jest personifikacja tokenów dostępu. Ta klasa jest udostępniana jako wygoda, ale nie wykonuje personifikacji tokenów dostępu; wykonuje tylko automatyczną rewersję do stanu niezpersonifikowanego. Dzieje się tak, ponieważ personifikacja dostępu do tokenu może być wykonywana na kilka różnych sposobów.
Aby zapoznać się z wprowadzeniem do modelu kontroli dostępu w systemie Windows, zobacz Kontrola dostępu w zestawie Windows SDK.
Nagłówek: atlsecurity.h
Automatyzuje rewersję personifikacji tokenu dostępu.
void Attach(const CAccessToken* pAT) throw();
klepać
Adres obiektu CAccessToken , który ma zostać przywrócony automatycznie
Ta metoda powinna być używana tylko wtedy, gdy obiekt CAutoRevertImpersonation został utworzony ze wskaźnikiem NULL CAccessToken
lub jeśli wcześniej wywołano polecenie Detach. W prostych przypadkach nie jest konieczne użycie tej metody.
CAutoRevertImpersonation
Tworzy obiekt.
CAutoRevertImpersonation(const CAccessToken* pAT) throw();
klepać
Adres obiektu CAccessToken , który ma zostać przywrócony automatycznie.
Rzeczywiste personifikacja tokenu dostępu należy wykonać oddzielnie od i najlepiej przed utworzeniem CAutoRevertImpersonation
obiektu. Personifikacja zostanie przywrócona automatycznie, gdy CAutoRevertImpersonation
obiekt wykracza poza zakres.
Niszczy obiekt i przywraca personifikację tokenu dostępu.
~CAutoRevertImpersonation() throw();
Przywraca wszelkie personifikacje aktualnie w przypadku obiektu CAccessToken dostarczonego w budowie lub za pomocą metody Attach. Jeśli nie CAccessToken
jest skojarzony, destruktor nie ma żadnego efektu.
Anuluje automatyczną rewersję personifikacji.
const CAccessToken* Detach() throw();
Adres wcześniej skojarzonego tokenu CAccessToken lub null, jeśli nie istniało żadne skojarzenie.
Wywołanie metody Detach uniemożliwia CAutoRevertImpersonation
obiektowi przywrócenie wszelkich personifikacji aktualnie w przypadku obiektu CAccessToken skojarzonego z tym obiektem. CAutoRevertImpersonation
Następnie można zniszczyć bez żadnego efektu lub ponownie skojarzyć z tym samym lub innym CAccessToken
obiektem przy użyciu polecenia Attach.
Pobiera token dostępu skojarzony z tym obiektem.
const CAccessToken* GetAccessToken() throw();
Adres wcześniej skojarzonego tokenu CAccessToken lub null, jeśli nie istniało żadne skojarzenie.
Jeśli ta metoda jest wywoływana w celach obejmujących rewersję personifikacji CAccessToken
obiektu, należy zamiast tego użyć metody Detach .