Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Deze klasse is een wrapper voor een toegangstoken.
Belangrijk
Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in Windows Runtime.
Syntaxis
class CAccessToken
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CAccessToken::~CAccessToken | De destructor. |
Openbare methoden
| Naam | Description |
|---|---|
| CAccessToken::Attach | Roep deze methode aan om eigenaar te worden van de opgegeven toegangstokenhandgreep. |
| CAccessToken::CheckTokenMembership | Roep deze methode aan om te bepalen of een opgegeven SID is ingeschakeld in het CAccessToken object. |
| CAccessToken::CreateImpersonationToken | Roep deze methode aan om een nieuw imitatietoegangstoken te maken. |
| CAccessToken::CreatePrimaryToken | Roep deze methode aan om een nieuw primair token te maken. |
| CAccessToken::CreateProcessAsUser | Roep deze methode aan om een nieuw proces te maken dat wordt uitgevoerd in de beveiligingscontext van de gebruiker die wordt vertegenwoordigd door het CAccessToken object. |
| CAccessToken::CreateRestrictedToken | Roep deze methode aan om een nieuw, beperkt CAccessToken object te maken. |
| CAccessToken::D etach | Roep deze methode aan om het eigendom van het toegangstoken in te trekken. |
| CAccessToken::D isablePrivilege | Roep deze methode aan om een bevoegdheid in het CAccessToken object uit te schakelen. |
| CAccessToken::D isablePrivileges | Roep deze methode aan om een of meer bevoegdheden in het CAccessToken object uit te schakelen. |
| CAccessToken::EnablePrivilege | Roep deze methode aan om een bevoegdheid in het CAccessToken object in te schakelen. |
| CAccessToken::EnablePrivileges | Roep deze methode aan om een of meer bevoegdheden in het CAccessToken object in te schakelen. |
| CAccessToken::GetDefaultDacl | Roep deze methode aan om de standaard-DACL van het CAccessToken object te retourneren. |
| CAccessToken::GetEffectiveToken | Roep deze methode aan om het CAccessToken object gelijk te krijgen aan het toegangstoken dat van kracht is voor de huidige thread. |
| CAccessToken::GetGroups | Roep deze methode aan om de tokengroepen van het CAccessToken object te retourneren. |
| CAccessToken::GetHandle | Roep deze methode aan om een ingang op te halen voor het toegangstoken. |
| CAccessToken::GetImpersonationLevel | Roep deze methode aan om het imitatieniveau op te halen uit het toegangstoken. |
| CAccessToken::GetLogonSessionId | Roep deze methode aan om de aanmeldingssessie-id op te halen die is gekoppeld aan het CAccessToken object. |
| CAccessToken::GetLogonSid | Roep deze methode aan om de aanmeldings-SID op te halen die aan het CAccessToken object is gekoppeld. |
| CAccessToken::GetOwner | Roep deze methode aan om de eigenaar op te halen die is gekoppeld aan het CAccessToken object. |
| CAccessToken::GetPrimaryGroup | Roep deze methode aan om de primaire groep op te halen die aan het CAccessToken object is gekoppeld. |
| CAccessToken::GetPrivileges | Roep deze methode aan om de bevoegdheden op te halen die aan het CAccessToken object zijn gekoppeld. |
| CAccessToken::GetProcessToken | Roep deze methode aan om het CAccessToken met het toegangstoken te initialiseren vanuit het opgegeven proces. |
| CAccessToken::GetProfile | Roep deze methode aan om de ingang op te halen die verwijst naar het gebruikersprofiel dat aan het CAccessToken object is gekoppeld. |
| CAccessToken::GetSource | Roep deze methode aan om de bron van het CAccessToken object op te halen. |
| CAccessToken::GetStatistics | Roep deze methode aan om informatie op te halen die is gekoppeld aan het CAccessToken object. |
| CAccessToken::GetTerminalServicesSessionId | Roep deze methode aan om de Terminal Services-sessie-id op te halen die aan het CAccessToken object is gekoppeld. |
| CAccessToken::GetThreadToken | Roep deze methode aan om het CAccessToken met het token van de opgegeven thread te initialiseren. |
| CAccessToken::GetTokenId | Roep deze methode aan om de token-id op te halen die is gekoppeld aan het CAccessToken object. |
| CAccessToken::GetType | Roep deze methode aan om het tokentype van het CAccessToken object op te halen. |
| CAccessToken::GetUser | Roep deze methode aan om de gebruiker te identificeren die is gekoppeld aan het CAccessToken object. |
| CAccessToken::HKeyCurrentUser | Roep deze methode aan om de ingang op te halen die verwijst naar het gebruikersprofiel dat aan het CAccessToken object is gekoppeld. |
| CAccessToken::imitatie | Roep deze methode aan om een imitatie CAccessToken toe te wijzen aan een thread. |
| CAccessToken::ImpersonateLoggedOnUser | Roep deze methode aan om de aanroepende thread de beveiligingscontext van een aangemelde gebruiker te laten imiteren. |
| CAccessToken::IsTokenRestricted | Roep deze methode aan om te testen of het CAccessToken object een lijst met beperkte SID's bevat. |
| CAccessToken::LoadUserProfile | Roep deze methode aan om het gebruikersprofiel te laden dat is gekoppeld aan het CAccessToken object. |
| CAccessToken::LogonUser | Roep deze methode aan om een aanmeldingssessie te maken voor de gebruiker die is gekoppeld aan de opgegeven referenties. |
| CAccessToken::OpenCOMClientToken | Roep deze methode aan vanuit een COM-server die een aanroep van een client afhandelt om het CAccessToken met het toegangstoken van de COM-client te initialiseren. |
| CAccessToken::OpenNamedPipeClientToken | Roep deze methode aan vanuit een server die aanvragen via een benoemde pijp neemt om het CAccessToken met het toegangstoken van de client te initialiseren. |
| CAccessToken::OpenRPCClientToken | Roep deze methode aan vanuit een server die een aanroep van een RPC-client verwerkt om het CAccessToken met het toegangstoken van de client te initialiseren. |
| CAccessToken::OpenThreadToken | Roep deze methode aan om het imitatieniveau in te stellen en initialiseer vervolgens het CAccessToken met het token van de opgegeven thread. |
| CAccessToken::P rivilegeCheck | Roep deze methode aan om te bepalen of een opgegeven set bevoegdheden is ingeschakeld in het CAccessToken object. |
| CAccessToken::Revert | Roep deze methode aan om een thread te stoppen die een imitatietoken gebruikt. |
| CAccessToken::SetDefaultDacl | Roep deze methode aan om de standaard-DACL van het CAccessToken object in te stellen. |
| CAccessToken::SetOwner | Roep deze methode aan om de eigenaar van het CAccessToken object in te stellen. |
| CAccessToken::SetPrimaryGroup | Roep deze methode aan om de primaire groep van het CAccessToken object in te stellen. |
Opmerkingen
Een toegangstoken is een object dat de beveiligingscontext van een proces of thread beschrijft en wordt toegewezen aan elke gebruiker die is aangemeld bij een Windows-systeem.
Zie Access Control in de Windows SDK voor een inleiding tot het toegangsbeheermodel in Windows.
Requirements
Koptekst: atlsecurity.h
CAccessToken::Attach
Roep deze methode aan om eigenaar te worden van de opgegeven toegangstokenhandgreep.
void Attach(HANDLE hToken) throw();
Parameterwaarden
hToken
Een ingang voor het toegangstoken.
Opmerkingen
In builds voor foutopsporing treedt er een assertiefout op als het CAccessToken object al eigenaar is van een toegangstoken.
CAccessToken::~CAccessToken
De destructor.
virtual ~CAccessToken() throw();
Opmerkingen
Alle toegewezen resources worden vrijgemaakt.
CAccessToken::CheckTokenMembership
Roep deze methode aan om te bepalen of een opgegeven SID is ingeschakeld in het CAccessToken object.
bool CheckTokenMembership(
const CSid& rSid,
bool* pbIsMember) const throw(...);
Parameterwaarden
rSid
Verwijzing naar een CSid-klasseobject .
pbIsMember
Wijs een variabele aan die de resultaten van de controle ontvangt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De CheckTokenMembership methode controleert op de aanwezigheid van de SID in de gebruikers- en groeps-SID's van het toegangstoken. Als de SID aanwezig is en het kenmerk SE_GROUP_ENABLED heeft, is pbIsMember ingesteld op TRUE; anders is deze ingesteld op FALSE.
In builds voor foutopsporing treedt een assertiefout op als pbIsMember geen geldige aanwijzer is.
Opmerking
Het CAccessToken object moet een imitatietoken zijn en geen primair token.
CAccessToken::CreateImpersonationToken
Roep deze methode aan om een imitatietoegangstoken te maken.
bool CreateImpersonationToken(
CAccessToken* pImp,
SECURITY_IMPERSONATION_LEVEL sil = SecurityImpersonation) const throw(...);
Parameterwaarden
Pimp
Aanwijzer naar het nieuwe CAccessToken object.
Sil
Hiermee geeft u een SECURITY_IMPERSONATION_LEVEL geïnventariseerd type dat het imitatieniveau van het nieuwe token levert.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
CreateImpersonationToken roept DuplicateToken aan om een nieuw imitatietoken te maken.
CAccessToken::CreatePrimaryToken
Roep deze methode aan om een nieuw primair token te maken.
bool CreatePrimaryToken(
CAccessToken* pPri,
DWORD dwDesiredAccess = MAXIMUM_ALLOWED,
const CSecurityAttributes* pTokenAttributes = NULL) const throw(...);
Parameterwaarden
pPri
Aanwijzer naar het nieuwe CAccessToken object.
dwDesiredAccess
Hiermee geeft u de aangevraagde toegangsrechten voor het nieuwe token. De standaardinstelling, MAXIMUM_ALLOWED, vraagt alle toegangsrechten aan die geldig zijn voor de beller. Zie Toegangsrechten en toegangsmaskers voor meer informatie over toegangsrechten.
pTokenAttributes
Wijs een SECURITY_ATTRIBUTES structuur aan waarmee een beveiligingsdescriptor voor het nieuwe token wordt opgegeven en wordt bepaald of onderliggende processen het token kunnen overnemen. Als pTokenAttributes NULL is, krijgt het token een standaardbeveiligingsdescriptor en kan de ingang niet worden overgenomen.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
CreatePrimaryToken roept DuplicateTokenEx aan om een nieuw primair token te maken.
CAccessToken::CreateProcessAsUser
Roep deze methode aan om een nieuw proces te maken dat wordt uitgevoerd in de beveiligingscontext van de gebruiker die wordt vertegenwoordigd door het CAccessToken object.
bool CreateProcessAsUser(
LPCTSTR pApplicationName,
LPTSTR pCommandLine,
LPPROCESS_INFORMATION pProcessInformation,
LPSTARTUPINFO pStartupInfo,
DWORD dwCreationFlags = NORMAL_PRIORITY_CLASS,
bool bLoadProfile = false,
const CSecurityAttributes* pProcessAttributes = NULL,
const CSecurityAttributes* pThreadAttributes = NULL,
bool bInherit = false,
LPCTSTR pCurrentDirectory = NULL) throw();
Parameterwaarden
pApplicationName
Aanwijzer naar een door null beëindigde tekenreeks waarmee de module wordt opgegeven die moet worden uitgevoerd. Deze parameter is mogelijk niet NULL.
pCommandLine
Aanwijzer naar een door null beëindigde tekenreeks die de opdrachtregel aangeeft die moet worden uitgevoerd.
pProcessInformation
Wijs een PROCESS_INFORMATION structuur aan die identificatiegegevens over het nieuwe proces ontvangt.
pStartupInfo
Aanwijzer naar een STARTUPINFO-structuur die aangeeft hoe het hoofdvenster voor het nieuwe proces moet worden weergegeven.
dwCreationFlags
Hiermee geeft u extra vlaggen op waarmee de prioriteitsklasse wordt bepaald en het proces wordt gemaakt. Zie de Win32-functie CreateProcessAsUser voor een lijst met vlaggen.
bLoadProfile
Als WAAR is, wordt het profiel van de gebruiker geladen met LoadUserProfile.
pProcessAttributes
Wijs een SECURITY_ATTRIBUTES structuur aan waarmee een beveiligingsdescriptor voor het nieuwe proces wordt opgegeven en wordt bepaald of onderliggende processen de geretourneerde ingang kunnen overnemen. Als pProcessAttributes NULL is, krijgt het proces een standaardbeveiligingsdescriptor en kan de ingang niet worden overgenomen.
pThreadAttributes
Wijs een SECURITY_ATTRIBUTES structuur aan waarmee een beveiligingsdescriptor voor de nieuwe thread wordt opgegeven en wordt bepaald of onderliggende processen de geretourneerde ingang kunnen overnemen. Als pThreadAttributes NULL is, krijgt de thread een standaardbeveiligingsdescriptor en kan de ingang niet worden overgenomen.
bInherit
Geeft aan of het nieuwe proces ingangen over neemt van het aanroepende proces. Als WAAR is, wordt elke overgenomen open ingang in het aanroepende proces overgenomen door het nieuwe proces. Overgenomen ingangen hebben dezelfde waarde en toegangsbevoegdheden als de oorspronkelijke ingangen.
pCurrentDirectory
Aanwijzer naar een door null beëindigde tekenreeks waarmee het huidige station en de map voor het nieuwe proces worden opgegeven. De tekenreeks moet een volledig pad zijn dat een stationsletter bevat. Als deze parameter NULL is, heeft het nieuwe proces hetzelfde huidige station en dezelfde map als het aanroepende proces.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
CreateProcessAsUser gebruikt de CreateProcessAsUser Functie Win32 om een nieuw proces te maken dat wordt uitgevoerd in de beveiligingscontext van de gebruiker die wordt vertegenwoordigd door het CAccessToken object. Zie de beschrijving van de functie CreateProcessAsUser voor een volledige bespreking van de vereiste parameters.
Om deze methode te voltooien, moet het CAccessToken object AssignPrimaryToken bevatten (tenzij het een beperkt token is) en IncreaseQuota-bevoegdheden.
CAccessToken::CreateRestrictedToken
Roep deze methode aan om een nieuw, beperkt CAccessToken object te maken.
bool CreateRestrictedToken(
CAccessToken* pRestrictedToken,
const CTokenGroups& SidsToDisable,
const CTokenGroups& SidsToRestrict,
const CTokenPrivileges& PrivilegesToDelete = CTokenPrivileges()) const throw(...);
Parameterwaarden
pRestrictedToken
Het nieuwe, beperkte CAccessToken object.
SidsToDisable
Een CTokenGroups object dat de alleen-weigeren-SID's aangeeft.
SidsToRestrict
Een CTokenGroups object dat de beperkings-SID's aangeeft.
PrivilegesToDelete
Een CTokenPrivileges object dat de bevoegdheden aangeeft die moeten worden verwijderd in het beperkte token. Met de standaardwaarde wordt een leeg object gemaakt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
CreateRestrictedToken gebruikt de functie CreateRestrictedToken Win32 om een nieuw CAccessToken object te maken, met beperkingen.
Belangrijk
Zorg er bij het gebruik CreateRestrictedTokenvan het volgende voor: het bestaande token is geldig (en niet ingevoerd door de gebruiker) en SidsToDisable en PrivilegesToDelete zijn zowel geldig (en niet ingevoerd door de gebruiker). Als de methode FALSE retourneert, wordt de functionaliteit voor weigeren geweigerd.
CAccessToken::D etach
Roep deze methode aan om het eigendom van het toegangstoken in te trekken.
HANDLE Detach() throw();
Retourwaarde
Retourneert de ingang die CAccessToken is losgekoppeld.
Opmerkingen
Met deze methode wordt het CAccessTokeneigendom van het toegangstoken ingetrokken.
CAccessToken::D isablePrivilege
Roep deze methode aan om een bevoegdheid in het CAccessToken object uit te schakelen.
bool DisablePrivilege(
LPCTSTR pszPrivilege,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parameterwaarden
pszPrivilege
Wijs een tekenreeks aan die de bevoegdheid bevat om uit te schakelen in het CAccessToken object.
pPreviousState
Wijs een CTokenPrivileges object aan dat de vorige status van de bevoegdheden bevat.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::D isablePrivileges
Roep deze methode aan om een of meer bevoegdheden in het CAccessToken object uit te schakelen.
bool DisablePrivileges(
const CAtlArray<LPCTSTR>& rPrivileges,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parameterwaarden
rPrivileges
Aanwijzer naar een matrix met tekenreeksen met de bevoegdheden die u in het CAccessToken object wilt uitschakelen.
pPreviousState
Wijs een CTokenPrivileges object aan dat de vorige status van de bevoegdheden bevat.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::EnablePrivilege
Roep deze methode aan om een bevoegdheid in het CAccessToken object in te schakelen.
bool EnablePrivilege(
LPCTSTR pszPrivilege,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parameterwaarden
pszPrivilege
Wijs een tekenreeks aan die de bevoegdheid bevat om het CAccessToken object in te schakelen.
pPreviousState
Wijs een CTokenPrivileges object aan dat de vorige status van de bevoegdheden bevat.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::EnablePrivileges
Roep deze methode aan om een of meer bevoegdheden in het CAccessToken object in te schakelen.
bool EnablePrivileges(
const CAtlArray<LPCTSTR>& rPrivileges,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parameterwaarden
rPrivileges
Wijs een matrix aan met tekenreeksen met de bevoegdheden die u in het CAccessToken object wilt inschakelen.
pPreviousState
Wijs een CTokenPrivileges object aan dat de vorige status van de bevoegdheden bevat.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetDefaultDacl
Roep deze methode aan om de standaard-DACL van het CAccessToken object te retourneren.
bool GetDefaultDacl(CDacl* pDacl) const throw(...);
Parameterwaarden
pDacl
Wijs het CDacl-klasseobject aan dat de standaard-DACL van het CAccessToken object ontvangt.
Retourwaarde
Retourneert TRUE als de standaard-DACL is hersteld, anders ONWAAR.
CAccessToken::GetEffectiveToken
Roep deze methode aan om het CAccessToken object gelijk te krijgen aan het toegangstoken dat van kracht is voor de huidige thread.
bool GetEffectiveToken(DWORD dwDesiredAccess) throw();
Parameterwaarden
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetGroups
Roep deze methode aan om de tokengroepen van het CAccessToken object te retourneren.
bool GetGroups(CTokenGroups* pGroups) const throw(...);
Parameterwaarden
pGroups
Wijs het CTokenGroups-klasseobject aan waarmee de groepsinformatie wordt ontvangen.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetHandle
Roep deze methode aan om een ingang op te halen voor het toegangstoken.
HANDLE GetHandle() const throw();
Retourwaarde
Retourneert een ingang naar het toegangstoken van het CAccessToken object.
CAccessToken::GetImpersonationLevel
Roep deze methode aan om het imitatieniveau op te halen uit het toegangstoken.
bool GetImpersonationLevel(
SECURITY_IMPERSONATION_LEVEL* pImpersonationLevel) const throw(...);
Parameterwaarden
pImpersonationLevel
Wijs een SECURITY_IMPERSONATION_LEVEL opsommingstype aan dat de informatie op imitatieniveau ontvangt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetLogonSessionId
Roep deze methode aan om de aanmeldingssessie-id op te halen die is gekoppeld aan het CAccessToken object.
bool GetLogonSessionId(LUID* pluid) const throw(...);
Parameterwaarden
pluid
Wijs een LUID aan die de aanmeldingssessie-id ontvangt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
In builds voor foutopsporing treedt er een assertiefout op als pluid een ongeldige waarde is.
CAccessToken::GetLogonSid
Roep deze methode aan om de aanmeldings-SID op te halen die aan het CAccessToken object is gekoppeld.
bool GetLogonSid(CSid* pSid) const throw(...);
Parameterwaarden
pSid
Aanwijzer naar een CSid-klasseobject .
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
In builds voor foutopsporing treedt er een assertiefout op als pSid een ongeldige waarde is.
CAccessToken::GetOwner
Roep deze methode aan om de eigenaar op te halen die is gekoppeld aan het CAccessToken object.
bool GetOwner(CSid* pSid) const throw(...);
Parameterwaarden
pSid
Aanwijzer naar een CSid-klasseobject .
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De eigenaar is standaard ingesteld op objecten die zijn gemaakt terwijl dit toegangstoken van kracht is.
CAccessToken::GetPrimaryGroup
Roep deze methode aan om de primaire groep op te halen die aan het CAccessToken object is gekoppeld.
bool GetPrimaryGroup(CSid* pSid) const throw(...);
Parameterwaarden
pSid
Aanwijzer naar een CSid-klasseobject .
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De groep wordt standaard ingesteld op objecten die zijn gemaakt terwijl dit toegangstoken van kracht is.
CAccessToken::GetPrivileges
Roep deze methode aan om de bevoegdheden op te halen die aan het CAccessToken object zijn gekoppeld.
bool GetPrivileges(CTokenPrivileges* pPrivileges) const throw(...);
Parameterwaarden
pPrivileges
Wijs een CTokenPrivileges-klasseobject aan waarmee de bevoegdheden worden ontvangen.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetProcessToken
Roep deze methode aan om het CAccessToken met het toegangstoken te initialiseren vanuit het opgegeven proces.
bool GetProcessToken(DWORD dwDesiredAccess, HANDLE hProcess = NULL) throw();
Parameterwaarden
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
hProcess
Afhandelen naar het proces waarvan het toegangstoken wordt geopend. Als de standaardwaarde van NULL wordt gebruikt, wordt het huidige proces gebruikt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
Roept de Functie OpenProcessToken Win32 aan.
CAccessToken::GetProfile
Roep deze methode aan om de ingang op te halen die verwijst naar het gebruikersprofiel dat aan het CAccessToken object is gekoppeld.
HANDLE GetProfile() const throw();
Retourwaarde
Retourneert een ingang die verwijst naar het gebruikersprofiel of NULL als er geen profiel bestaat.
CAccessToken::GetSource
Roep deze methode aan om de bron van het CAccessToken object op te halen.
bool GetSource(TOKEN_SOURCE* pSource) const throw(...);
Parameterwaarden
pSource
Wijs een TOKEN_SOURCE structuur aan.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetStatistics
Roep deze methode aan om informatie op te halen die is gekoppeld aan het CAccessToken object.
bool GetStatistics(TOKEN_STATISTICS* pStatistics) const throw(...);
Parameterwaarden
pStatistics
Aanwijzer naar een TOKEN_STATISTICS structuur.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetTerminalServicesSessionId
Roep deze methode aan om de Terminal Services-sessie-id op te halen die aan het CAccessToken object is gekoppeld.
bool GetTerminalServicesSessionId(DWORD* pdwSessionId) const throw(...);
Parameterwaarden
pdwSessionId
De sessie-id van Terminal Services.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetThreadToken
Roep deze methode aan om het CAccessToken met het token van de opgegeven thread te initialiseren.
bool GetThreadToken(
DWORD dwDesiredAccess,
HANDLE hThread = NULL,
bool bOpenAsSelf = true) throw();
Parameterwaarden
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
hThread
Greep naar de thread waarvan het toegangstoken is geopend.
bOpenAsSelf
Hiermee wordt aangegeven of de toegangscontrole moet worden uitgevoerd op basis van de beveiligingscontext van de thread die de GetThreadToken methode aanroept of op basis van de beveiligingscontext van het proces voor de aanroepende thread.
Als deze parameter ONWAAR is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext voor de aanroepende thread. Als de thread een client nabootst, kan deze beveiligingscontext dat van een clientproces zijn. Als deze parameter TRUE is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext van het proces voor de aanroepende thread.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetTokenId
Roep deze methode aan om de token-id op te halen die is gekoppeld aan het CAccessToken object.
bool GetTokenId(LUID* pluid) const throw(...);
Parameterwaarden
pluid
Wijs een LUID aan die de token-id ontvangt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::GetType
Roep deze methode aan om het tokentype van het CAccessToken object op te halen.
bool GetType(TOKEN_TYPE* pType) const throw(...);
Parameterwaarden
pType
Adres van de TOKEN_TYPE variabele die bij succes het type token ontvangt.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
Het TOKEN_TYPE opsommingstype bevat waarden die onderscheid maken tussen een primair token en een imitatietoken.
CAccessToken::GetUser
Roep deze methode aan om de gebruiker te identificeren die is gekoppeld aan het CAccessToken object.
bool GetUser(CSid* pSid) const throw(...);
Parameterwaarden
pSid
Aanwijzer naar een CSid-klasseobject .
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
CAccessToken::HKeyCurrentUser
Roep deze methode aan om de ingang op te halen die verwijst naar het gebruikersprofiel dat aan het CAccessToken object is gekoppeld.
HKEY HKeyCurrentUser() const throw();
Retourwaarde
Retourneert een ingang die verwijst naar het gebruikersprofiel of NULL als er geen profiel bestaat.
CAccessToken::imitatie
Roep deze methode aan om een imitatie CAccessToken toe te wijzen aan een thread.
bool Impersonate(HANDLE hThread = NULL) const throw(...);
Parameterwaarden
hThread
Handle to the thread to assign the impersonation token token token. Deze ingang moet zijn geopend met TOKEN_IMPERSONATE toegangsrechten. Als hThread NULL is, zorgt de methode ervoor dat de thread stopt met het gebruik van een imitatietoken.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
In builds voor foutopsporing treedt een assertiefout op als CAccessToken er geen geldige aanwijzer naar een token is.
De CAutoRevertImpersonation-klasse kan worden gebruikt om geïmiteerde toegangstokens automatisch terug te keren.
CAccessToken::ImpersonateLoggedOnUser
Roep deze methode aan om de aanroepende thread de beveiligingscontext van een aangemelde gebruiker te laten imiteren.
bool ImpersonateLoggedOnUser() const throw(...);
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
Belangrijk
Als een aanroep van een imitatiefunctie om welke reden dan ook mislukt, wordt de client niet geïmiteerd en wordt de clientaanvraag gedaan in de beveiligingscontext van het proces van waaruit de aanroep is gedaan. Als het proces wordt uitgevoerd als een account met hoge bevoegdheden of als lid van een beheergroep, kan de gebruiker mogelijk acties uitvoeren die hij of zij anders niet heeft toegestaan. Daarom moet de retourwaarde voor deze functie altijd worden bevestigd.
CAccessToken::IsTokenRestricted
Roep deze methode aan om te testen of het CAccessToken object een lijst met beperkte SID's bevat.
bool IsTokenRestricted() const throw();
Retourwaarde
Retourneert TRUE als het object een lijst bevat met het beperken van SID's, FALSE als er geen beperkings-SID's zijn of als de methode mislukt.
CAccessToken::LoadUserProfile
Roep deze methode aan om het gebruikersprofiel te laden dat is gekoppeld aan het CAccessToken object.
bool LoadUserProfile() throw(...);
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
In builds voor foutopsporing treedt er een assertiefout op als het CAccessToken geen geldig token bevat of als er al een gebruikersprofiel bestaat.
CAccessToken::LogonUser
Roep deze methode aan om een aanmeldingssessie te maken voor de gebruiker die is gekoppeld aan de opgegeven referenties.
bool LogonUser(
LPCTSTR pszUserName,
LPCTSTR pszDomain,
LPCTSTR pszPassword,
DWORD dwLogonType = LOGON32_LOGON_INTERACTIVE,
DWORD dwLogonProvider = LOGON32_PROVIDER_DEFAULT) throw();
Parameterwaarden
pszUserName
Aanwijzer naar een door null beëindigde tekenreeks waarmee de gebruikersnaam wordt opgegeven. Dit is de naam van het gebruikersaccount om u aan te melden.
pszDomain
Aanwijzer naar een door null beëindigde tekenreeks die de naam aangeeft van het domein of de server waarvan de accountdatabase het pszUserName-account bevat.
pszPassword
Aanwijzer naar een tekenreeks met null-beëindiging waarmee het wachtwoord voor tekst zonder opmaak wordt opgegeven voor het gebruikersaccount dat is opgegeven door pszUserName.
dwLogonType
Hiermee geeft u het type aanmeldingsbewerking op dat moet worden uitgevoerd. Zie LogonUser voor meer informatie.
dwLogonProvider
Hiermee geeft u de aanmeldingsprovider op. Zie LogonUser voor meer informatie.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
Het toegangstoken dat het gevolg is van de aanmelding, wordt gekoppeld aan de CAccessToken. Om deze methode te voltooien, moet het CAccessToken object SE_TCB_NAME bevoegdheden hebben, waarmee de houder wordt geïdentificeerd als onderdeel van de vertrouwde computerbasis. Zie LogonUser voor meer informatie over de vereiste bevoegdheden.
CAccessToken::OpenCOMClientToken
Roep deze methode aan vanuit een COM-server die een aanroep van een client afhandelt om het CAccessToken met het toegangstoken van de COM-client te initialiseren.
bool OpenCOMClientToken(
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parameterwaarden
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
bImpersonate
Als WAAR is, imiteert de huidige thread de aanroepende COM-client als deze aanroep is voltooid. Als ONWAAR is, wordt het toegangstoken geopend, maar heeft de thread geen imitatietoken wanneer deze aanroep is voltooid.
bOpenAsSelf
Hiermee wordt aangegeven of de toegangscontrole moet worden uitgevoerd op basis van de beveiligingscontext van de thread die de GetThreadToken-methode aanroept of op basis van de beveiligingscontext van het proces voor de aanroepende thread.
Als deze parameter ONWAAR is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext voor de aanroepende thread. Als de thread een client nabootst, kan deze beveiligingscontext dat van een clientproces zijn. Als deze parameter TRUE is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext van het proces voor de aanroepende thread.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De CAutoRevertImpersonation-klasse kan worden gebruikt om automatisch geïmiteerde toegangstokens te herstellen die zijn gemaakt door de vlag bImpersonate in te stellen op TRUE.
CAccessToken::OpenNamedPipeClientToken
Roep deze methode aan vanuit een server die aanvragen via een benoemde pijp neemt om het CAccessToken met het toegangstoken van de client te initialiseren.
bool OpenNamedPipeClientToken(
HANDLE hPipe,
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parameterwaarden
hPipe
Greep naar een benoemde pijp.
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
bImpersonate
Als WAAR is, imiteert de huidige thread de aanroepende pijpclient als deze aanroep is voltooid. Als ONWAAR is, wordt het toegangstoken geopend, maar heeft de thread geen imitatietoken wanneer deze aanroep is voltooid.
bOpenAsSelf
Hiermee wordt aangegeven of de toegangscontrole moet worden uitgevoerd op basis van de beveiligingscontext van de thread die de GetThreadToken-methode aanroept of op basis van de beveiligingscontext van het proces voor de aanroepende thread.
Als deze parameter ONWAAR is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext voor de aanroepende thread. Als de thread een client nabootst, kan deze beveiligingscontext dat van een clientproces zijn. Als deze parameter TRUE is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext van het proces voor de aanroepende thread.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De CAutoRevertImpersonation-klasse kan worden gebruikt om automatisch geïmiteerde toegangstokens te herstellen die zijn gemaakt door de vlag bImpersonate in te stellen op TRUE.
CAccessToken::OpenRPCClientToken
Roep deze methode aan vanuit een server die een aanroep van een RPC-client verwerkt om het CAccessToken met het toegangstoken van de client te initialiseren.
bool OpenRPCClientToken(
RPC_BINDING_HANDLE BindingHandle,
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parameterwaarden
BindingHandle
Bindingsgreep op de server die een binding aan een client vertegenwoordigt.
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
bImpersonate
Als WAAR is, imiteert de huidige thread de aanroepende RPC-client als deze aanroep is voltooid. Als ONWAAR is, wordt het toegangstoken geopend, maar heeft de thread geen imitatietoken wanneer deze aanroep is voltooid.
bOpenAsSelf
Hiermee wordt aangegeven of de toegangscontrole moet worden uitgevoerd op basis van de beveiligingscontext van de thread die de GetThreadToken-methode aanroept of op basis van de beveiligingscontext van het proces voor de aanroepende thread.
Als deze parameter ONWAAR is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext voor de aanroepende thread. Als de thread een client nabootst, kan deze beveiligingscontext dat van een clientproces zijn. Als deze parameter TRUE is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext van het proces voor de aanroepende thread.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De CAutoRevertImpersonation-klasse kan worden gebruikt om automatisch geïmiteerde toegangstokens te herstellen die zijn gemaakt door de vlag bImpersonate in te stellen op TRUE.
CAccessToken::OpenThreadToken
Roep deze methode aan om het imitatieniveau in te stellen en initialiseer vervolgens het CAccessToken met het token van de opgegeven thread.
bool OpenThreadToken(
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true,
SECURITY_IMPERSONATION_LEVEL sil = SecurityImpersonation) throw(...);
Parameterwaarden
dwDesiredAccess
Hiermee geeft u een toegangsmasker op waarmee de aangevraagde typen toegang tot het toegangstoken worden opgegeven. Deze aangevraagde toegangstypen worden vergeleken met de DACL van het token om te bepalen welke toegangen worden verleend of geweigerd.
bImpersonate
Als WAAR is, blijft de thread op het aangevraagde imitatieniveau staan nadat deze methode is voltooid. Als ONWAAR is, wordt de thread teruggezet naar het oorspronkelijke imitatieniveau.
bOpenAsSelf
Hiermee wordt aangegeven of de toegangscontrole moet worden uitgevoerd op basis van de beveiligingscontext van de thread die de GetThreadToken-methode aanroept of op basis van de beveiligingscontext van het proces voor de aanroepende thread.
Als deze parameter ONWAAR is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext voor de aanroepende thread. Als de thread een client nabootst, kan deze beveiligingscontext dat van een clientproces zijn. Als deze parameter TRUE is, wordt de toegangscontrole uitgevoerd met behulp van de beveiligingscontext van het proces voor de aanroepende thread.
Sil
Hiermee geeft u een SECURITY_IMPERSONATION_LEVEL geïnventariseerd type dat het imitatieniveau van het token levert.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
OpenThreadToken is vergelijkbaar met CAccessToken::GetThreadToken, maar stelt het imitatieniveau in voordat het toegangstoken van de CAccessToken thread wordt geïnitialiseerd.
De CAutoRevertImpersonation-klasse kan worden gebruikt om automatisch geïmiteerde toegangstokens te herstellen die zijn gemaakt door de vlag bImpersonate in te stellen op TRUE.
CAccessToken::P rivilegeCheck
Roep deze methode aan om te bepalen of een opgegeven set bevoegdheden is ingeschakeld in het CAccessToken object.
bool PrivilegeCheck(
PPRIVILEGE_SET RequiredPrivileges,
bool* pbResult) const throw();
Parameterwaarden
RequiredPrivileges
Wijs een PRIVILEGE_SET structuur aan.
pbResult
Aanwijzer naar een waarde die door de methode wordt ingesteld om aan te geven of een of alle opgegeven bevoegdheden zijn ingeschakeld in het CAccessToken object.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
Wanneer PrivilegeCheck deze functie wordt geretourneerd, wordt het Attributes lid van elke LUID_AND_ATTRIBUTES structuur ingesteld op SE_PRIVILEGE_USED_FOR_ACCESS als de bijbehorende bevoegdheid is ingeschakeld. Met deze methode wordt de Functie PrivilegeCheck Win32 aangeroepen.
CAccessToken::Revert
Roep deze methode aan om te voorkomen dat een thread een imitatietoken gebruikt.
bool Revert(HANDLE hThread = NULL) const throw();
Parameterwaarden
hThread
Greep naar de thread om terug te keren van imitatie. Als hThread NULL is, wordt uitgegaan van de huidige thread.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De reversion van imitatietokens kan automatisch worden uitgevoerd met de CAutoRevertImpersonation-klasse.
CAccessToken::SetDefaultDacl
Roep deze methode aan om de standaard-DACL van het CAccessToken object in te stellen.
bool SetDefaultDacl(const CDacl& rDacl) throw(...);
Parameterwaarden
rDacl
De nieuwe standaard-CDacl-klassegegevens .
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De standaard-DACL is de DACL die standaard wordt gebruikt wanneer er nieuwe objecten worden gemaakt met dit toegangstoken.
CAccessToken::SetOwner
Roep deze methode aan om de eigenaar van het CAccessToken object in te stellen.
bool SetOwner(const CSid& rSid) throw(...);
Parameterwaarden
rSid
Het CSid-klasseobject met de informatie van de eigenaar.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De eigenaar is de standaardeigenaar die wordt gebruikt voor nieuwe objecten die zijn gemaakt terwijl dit toegangstoken van kracht is.
CAccessToken::SetPrimaryGroup
Roep deze methode aan om de primaire groep van het CAccessToken object in te stellen.
bool SetPrimaryGroup(const CSid& rSid) throw(...);
Parameterwaarden
rSid
Het CSid-klasseobject met de informatie van de primaire groep.
Retourwaarde
Retourneert TRUE bij succes, ONWAAR bij mislukt.
Opmerkingen
De primaire groep is de standaardgroep voor nieuwe objecten die zijn gemaakt terwijl dit toegangstoken van kracht is.