Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Etkin Şablon Kitaplığı (ATL) desteklenmeye devam eder. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.
Bu sınıf, erişim belirteci için sarmalayıcıdır.
Önemli
Bu sınıf ve üyeleri Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz.
Sözdizimi
class CAccessToken
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| CAccessToken::~CAccessToken | Yok edici. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| CAccessToken::Attach | Verilen erişim belirteci tanıtıcısının sahipliğini almak için bu yöntemi çağırın. |
| CAccessToken::CheckTokenMembership | Nesnede belirtilen SID'nin etkinleştirilip etkinleştirilmediğini belirlemek için bu yöntemi çağırın CAccessToken . |
| CAccessToken::CreateImpersonationToken | Yeni bir kimliğe bürünme erişim belirteci oluşturmak için bu yöntemi çağırın. |
| CAccessToken::CreatePrimaryToken | Yeni bir birincil belirteç oluşturmak için bu yöntemi çağırın. |
| CAccessToken::CreateProcessAsUser | Nesnesi tarafından temsil edilen kullanıcının güvenlik bağlamında çalışan yeni bir işlem oluşturmak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::CreateRestrictedToken | Yeni, kısıtlanmış CAccessToken bir nesne oluşturmak için bu yöntemi çağır. |
| CAccessToken::D etach | Erişim belirtecinin sahipliğini iptal etmek için bu yöntemi çağırın. |
| CAccessToken::D isablePrivilege | Nesnedeki bir ayrıcalığı devre dışı bırakmak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::D isablePrivileges | Nesnedeki bir veya daha fazla ayrıcalığı devre dışı bırakmak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::EnablePrivilege | Nesnede bir ayrıcalık etkinleştirmek için bu yöntemi çağırın CAccessToken . |
| CAccessToken::EnablePrivileges | Nesnede bir veya daha fazla ayrıcalığı etkinleştirmek için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetDefaultDacl | Nesnenin varsayılan DACL'sini CAccessToken döndürmek için bu yöntemi çağırın. |
| CAccessToken::GetEffectiveToken | Geçerli iş parçacığı için CAccessToken geçerli erişim belirtecine eşit nesneyi almak için bu yöntemi çağırın. |
| CAccessToken::GetGroups | Nesnenin belirteç gruplarını döndürmek CAccessToken için bu yöntemi çağırın. |
| CAccessToken::GetHandle | Erişim belirtecine bir tanıtıcı almak için bu yöntemi çağırın. |
| CAccessToken::GetImpersonationLevel | Erişim belirtecinden kimliğe bürünme düzeyini almak için bu yöntemi çağırın. |
| CAccessToken::GetLogonSessionId | Nesneyle ilişkilendirilmiş Oturum Açma Oturum Kimliğini almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetLogonSid | Nesneyle ilişkilendirilmiş Oturum Açma SID'sini almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetOwner | Nesneyle ilişkili sahibi almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetPrimaryGroup | Nesnesiyle ilişkilendirilmiş birincil grubu almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetPrivileges | Nesnesiyle ilişkili ayrıcalıkları almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetProcessToken | verilen işlemden erişim belirteci ile başlatmak CAccessToken için bu yöntemi çağırın. |
| CAccessToken::GetProfile | Nesneyle ilişkilendirilmiş kullanıcı profiline işaret eden tanıtıcıyı almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetSource | Nesnenin kaynağını almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetStatistics | Nesnesiyle ilişkili bilgileri almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetTerminalServicesSessionId | Nesnesiyle ilişkilendirilmiş Terminal Hizmetleri Oturum Kimliğini almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetThreadToken | belirtilen iş parçacığından belirteç ile başlatmak CAccessToken için bu yöntemi çağırın. |
| CAccessToken::GetTokenId | Nesnesiyle ilişkilendirilmiş Belirteç Kimliğini almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetType | Nesnenin belirteç türünü almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::GetUser | Nesnesiyle ilişkili kullanıcıyı tanımlamak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::HKeyCurrentUser | Nesneyle ilişkilendirilmiş kullanıcı profiline işaret eden tanıtıcıyı almak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::Impersonate | Bir iş parçacığına kimliğe bürünme CAccessToken atamak için bu yöntemi çağır. |
| CAccessToken::ImpersonateLoggedOnUser | Çağıran iş parçacığının oturum açmış bir kullanıcının güvenlik bağlamının kimliğine bürünebilmesini sağlamak için bu yöntemi çağırın. |
| CAccessToken::IsTokenRestricted | Nesnenin CAccessToken kısıtlanmış SID'lerin listesini içerip içermediğini test etmek için bu yöntemi çağırın. |
| CAccessToken::LoadUserProfile | Nesnesiyle ilişkilendirilmiş kullanıcı profilini yüklemek için bu yöntemi çağırın CAccessToken . |
| CAccessToken::LogonUser | Verilen kimlik bilgileriyle ilişkilendirilmiş kullanıcı için oturum açma oturumu oluşturmak için bu yöntemi çağırın. |
| CAccessToken::OpenCOMClientToken | bu yöntemi, COM istemcisinden erişim belirteci ile başlatmak CAccessToken için bir istemciden gelen çağrıyı işleyen bir COM sunucusundan çağırın. |
| CAccessToken::OpenNamedPipeClientToken | İstemciden erişim belirteci ile başlatmak CAccessToken için adlandırılmış bir kanal üzerinden istekleri alan bir sunucudan bu yöntemi çağırın. |
| CAccessToken::OpenRPCClientToken | İstemciden erişim belirteci ile başlatmak için bir RPC istemcisinden gelen çağrıyı CAccessToken işleyen bir sunucunun içinden bu yöntemi çağırın. |
| CAccessToken::OpenThreadToken | Kimliğe bürünme düzeyini ayarlamak için bu yöntemi çağırın ve ardından belirtilen iş parçacığından belirteci ile başlatın CAccessToken . |
| CAccessToken::P rivilegeCheck | Nesnede belirtilen bir ayrıcalık kümesinin etkinleştirilip etkinleştirilmediğini belirlemek için bu yöntemi çağırın CAccessToken . |
| CAccessToken::Revert | Kimliğe bürünme belirteci kullanan bir iş parçacığını durdurmak için bu yöntemi çağırın. |
| CAccessToken::SetDefaultDacl | Nesnenin varsayılan DACL'sini ayarlamak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::SetOwner | Nesnenin sahibini ayarlamak için bu yöntemi çağırın CAccessToken . |
| CAccessToken::SetPrimaryGroup | Nesnenin birincil grubunu ayarlamak için bu yöntemi çağırın CAccessToken . |
Açıklamalar
Erişim belirteci, bir işlemin veya iş parçacığının güvenlik bağlamını açıklayan ve bir Windows sisteminde oturum açmış her kullanıcıya ayrılan bir nesnedir.
Windows'ta erişim denetimi modeline giriş için bkz . Windows SDK'sında Erişim Denetimi .
Gereksinimler
Üst bilgi: atlsecurity.h
CAccessToken::Attach
Verilen erişim belirteci tanıtıcısının sahipliğini almak için bu yöntemi çağırın.
void Attach(HANDLE hToken) throw();
Parametreler
hToken
Erişim belirtecinin tanıtıcısı.
Açıklamalar
Hata ayıklama derlemelerinde, nesne zaten bir erişim belirtecinin CAccessToken sahipliğine sahipse bir onaylama hatası oluşur.
CAccessToken::~CAccessToken
Yok edici.
virtual ~CAccessToken() throw();
Açıklamalar
Ayrılan tüm kaynakları serbesttir.
CAccessToken::CheckTokenMembership
Nesnede belirtilen SID'nin etkinleştirilip etkinleştirilmediğini belirlemek için bu yöntemi çağırın CAccessToken .
bool CheckTokenMembership(
const CSid& rSid,
bool* pbIsMember) const throw(...);
Parametreler
rSid
CSid Sınıfı nesnesine başvuru.
pbIsMember
Denetimin sonuçlarını alan bir değişkenin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
yöntemi, CheckTokenMembership erişim belirtecinin kullanıcı ve grup SID'lerinde SID'nin varlığını denetler. SID varsa ve SE_GROUP_ENABLED özniteliğine sahipse pbIsMember TRUE olarak ayarlanır; aksi takdirde FALSE olarak ayarlanır.
Hata ayıklama derlemelerinde pbIsMember geçerli bir işaretçi değilse onay hatası oluşur.
Not
Nesnenin CAccessToken birincil belirteç değil kimliğe bürünme belirteci olması gerekir.
CAccessToken::CreateImpersonationToken
Kimliğe bürünme erişim belirteci oluşturmak için bu yöntemi çağırın.
bool CreateImpersonationToken(
CAccessToken* pImp,
SECURITY_IMPERSONATION_LEVEL sil = SecurityImpersonation) const throw(...);
Parametreler
pImp
Yeni CAccessToken nesnenin işaretçisi.
sil
Yeni belirtecin kimliğe bürünme düzeyini sağlayan SECURITY_IMPERSONATION_LEVEL numaralandırılmış türünü belirtir.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CreateImpersonationTokenyeni bir kimliğe bürünme belirteci oluşturmak için DuplicateToken'ı çağırır.
CAccessToken::CreatePrimaryToken
Yeni bir birincil belirteç oluşturmak için bu yöntemi çağırın.
bool CreatePrimaryToken(
CAccessToken* pPri,
DWORD dwDesiredAccess = MAXIMUM_ALLOWED,
const CSecurityAttributes* pTokenAttributes = NULL) const throw(...);
Parametreler
pPri
Yeni CAccessToken nesnenin işaretçisi.
dwDesiredAccess
Yeni belirteç için istenen erişim haklarını belirtir. Varsayılan MAXIMUM_ALLOWED, arayan için geçerli olan tüm erişim haklarını istemektedir. Erişim hakları hakkında daha fazla bilgi için bkz . Erişim Hakları ve Erişim Maskeleri .
pTokenAttributes
Yeni belirteç için bir güvenlik tanımlayıcısı belirten ve alt işlemlerin belirteci devralıp devralamayacağını belirleyen bir SECURITY_ATTRIBUTES yapısının işaretçisi. pTokenAttributes NULL ise, belirteç varsayılan bir güvenlik tanımlayıcısı alır ve tanıtıcı devralınamaz.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CreatePrimaryTokenyeni bir birincil belirteç oluşturmak için DuplicateTokenEx'i çağırır.
CAccessToken::CreateProcessAsUser
Nesnesi tarafından temsil edilen kullanıcının güvenlik bağlamında çalışan yeni bir işlem oluşturmak için bu yöntemi çağırın CAccessToken .
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();
Parametreler
pApplicationName
Yürütülecek modülü belirten null ile sonlandırılan bir dizenin işaretçisi. Bu parametre NULL olmayabilir.
pCommandLine
Yürütülecek komut satırını belirten null ile sonlandırılan bir dizenin işaretçisi.
pProcessInformation
Yeni işlemle ilgili tanımlama bilgilerini alan bir PROCESS_INFORMATION yapısının işaretçisi.
pStartupInfo
Yeni işlem için ana pencerenin nasıl görüneceğini belirten STARTUPINFO yapısının işaretçisi.
dwCreationFlags
Öncelik sınıfını ve işlemin oluşturulmasını denetleye ek bayraklar belirtir. Bayrak listesi için bkz. Win32 işlevi CreateProcessAsUser .
bLoadProfile
TRUE ise, kullanıcının profili LoadUserProfile ile yüklenir.
pProcessAttributes
Yeni işlem için bir güvenlik tanımlayıcısı belirten ve alt işlemlerin döndürülen tanıtıcıyı devralıp devralamayacağını belirleyen bir SECURITY_ATTRIBUTES yapısının işaretçisi. pProcessAttributes NULL ise, işlem varsayılan bir güvenlik tanımlayıcısı alır ve tanıtıcı devralınamaz.
pThreadAttributes
Yeni iş parçacığı için bir güvenlik tanımlayıcısı belirten ve alt işlemlerin döndürülen tanıtıcıyı devralıp devralamayacağını belirleyen bir SECURITY_ATTRIBUTES yapısının işaretçisi. pThreadAttributes NULL ise, iş parçacığı varsayılan bir güvenlik tanımlayıcısı alır ve tanıtıcı devralınamaz.
bInherit
Yeni işlemin tanıtıcıları çağırma işleminden devralıp devralmadığını gösterir. TRUE ise, çağrı işlemindeki devralınabilir her açık tanıtıcı yeni işlem tarafından devralınır. Devralınan tanıtıcılar, özgün tanıtıcılarla aynı değere ve erişim ayrıcalıklarına sahiptir.
pCurrentDirectory
Yeni işlem için geçerli sürücüyü ve dizini belirten null olarak sonlandırılan bir dizenin işaretçisi. Dize, sürücü harfi içeren tam bir yol olmalıdır. Bu parametre NULL ise, yeni işlem çağrı işlemiyle aynı geçerli sürücüye ve dizine sahip olur.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CreateProcessAsUser, nesnesi tarafından CreateProcessAsUser temsil edilen CAccessToken kullanıcının güvenlik bağlamında çalışan yeni bir işlem oluşturmak için Win32 işlevini kullanır. Gerekli parametrelerin tam açıklaması için CreateProcessAsUser işlevinin açıklamasına bakın.
Bu yöntemin başarılı olması için nesnenin CAccessToken AssignPrimaryToken (kısıtlanmış bir belirteç olmadığı sürece) ve IncreaseQuota ayrıcalıklarını tutması gerekir.
CAccessToken::CreateRestrictedToken
Yeni, kısıtlanmış CAccessToken bir nesne oluşturmak için bu yöntemi çağır.
bool CreateRestrictedToken(
CAccessToken* pRestrictedToken,
const CTokenGroups& SidsToDisable,
const CTokenGroups& SidsToRestrict,
const CTokenPrivileges& PrivilegesToDelete = CTokenPrivileges()) const throw(...);
Parametreler
pRestrictedToken
Yeni, kısıtlanmış CAccessToken nesne.
SidsToDisable
CTokenGroups Yalnızca reddetme SID'lerini belirten bir nesne.
SidsToRestrict
CTokenGroups Kısıtlayıcı SID'leri belirten bir nesne.
PrivilegesToDelete
CTokenPrivileges Kısıtlanmış belirteçte silinecek ayrıcalıkları belirten bir nesne. Varsayılan değer boş bir nesne oluşturur.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CreateRestrictedToken, kısıtlamalarla CAccessToken Win32 işlevini kullanır.
Önemli
kullanırken CreateRestrictedTokenşunlardan emin olun: var olan belirtecin geçerli olduğundan (ve kullanıcı tarafından girilmediğinden) ve SidsToDisable ve PrivilegesToDelete'ın hem geçerli olduğundan (hem de kullanıcı tarafından girilmediğinden) emin olun. Yöntem YANLIŞ döndürürse, işlevselliği reddedin.
CAccessToken::D etach
Erişim belirtecinin sahipliğini iptal etmek için bu yöntemi çağırın.
HANDLE Detach() throw();
Dönüş Değeri
Ayrılmış olan tutamacını CAccessToken döndürür.
Açıklamalar
Bu yöntem erişim belirtecinin CAccessTokensahipliğini iptal eder.
CAccessToken::D isablePrivilege
Nesnedeki bir ayrıcalığı devre dışı bırakmak için bu yöntemi çağırın CAccessToken .
bool DisablePrivilege(
LPCTSTR pszPrivilege,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parametreler
pszPrivilege
Nesnede devre dışı bırakma ayrıcalığını içeren bir dize işaretçisi CAccessToken .
pPreviousState
Ayrıcalıkların önceki durumunu içerecek bir CTokenPrivileges nesnenin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::D isablePrivileges
Nesnedeki bir veya daha fazla ayrıcalığı devre dışı bırakmak için bu yöntemi çağırın CAccessToken .
bool DisablePrivileges(
const CAtlArray<LPCTSTR>& rPrivileges,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parametreler
rPrivileges
Nesnede devre dışı bırakılması gereken ayrıcalıkları içeren bir dize dizisinin işaretçisi CAccessToken .
pPreviousState
Ayrıcalıkların önceki durumunu içerecek bir CTokenPrivileges nesnenin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::EnablePrivilege
Nesnede bir ayrıcalık etkinleştirmek için bu yöntemi çağırın CAccessToken .
bool EnablePrivilege(
LPCTSTR pszPrivilege,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parametreler
pszPrivilege
nesnesinde etkinleştirme ayrıcalığını içeren bir dize işaretçisi CAccessToken .
pPreviousState
Ayrıcalıkların önceki durumunu içerecek bir CTokenPrivileges nesnenin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::EnablePrivileges
Nesnede bir veya daha fazla ayrıcalığı etkinleştirmek için bu yöntemi çağırın CAccessToken .
bool EnablePrivileges(
const CAtlArray<LPCTSTR>& rPrivileges,
CTokenPrivileges* pPreviousState = NULL) throw(...);
Parametreler
rPrivileges
Nesnede etkinleştirileceği ayrıcalıkları içeren bir dize dizisinin işaretçisi CAccessToken .
pPreviousState
Ayrıcalıkların önceki durumunu içerecek bir CTokenPrivileges nesnenin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetDefaultDacl
Nesnenin varsayılan DACL'sini CAccessToken döndürmek için bu yöntemi çağırın.
bool GetDefaultDacl(CDacl* pDacl) const throw(...);
Parametreler
pDacl
Nesnenin varsayılan DACL'sini alacak CDacl Sınıfı nesnesinin CAccessToken işaretçisi.
Dönüş Değeri
Varsayılan DACL kurtarıldıysa TRUE, aksi takdirde YANLIŞ döndürür.
CAccessToken::GetEffectiveToken
Geçerli iş parçacığı için CAccessToken geçerli erişim belirtecine eşit nesneyi almak için bu yöntemi çağırın.
bool GetEffectiveToken(DWORD dwDesiredAccess) throw();
Parametreler
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetGroups
Nesnenin belirteç gruplarını döndürmek CAccessToken için bu yöntemi çağırın.
bool GetGroups(CTokenGroups* pGroups) const throw(...);
Parametreler
pGroups
Grup bilgilerini alacak CTokenGroups Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetHandle
Erişim belirtecine bir tanıtıcı almak için bu yöntemi çağırın.
HANDLE GetHandle() const throw();
Dönüş Değeri
Nesnenin erişim belirtecine CAccessToken bir tanıtıcı döndürür.
CAccessToken::GetImpersonationLevel
Erişim belirtecinden kimliğe bürünme düzeyini almak için bu yöntemi çağırın.
bool GetImpersonationLevel(
SECURITY_IMPERSONATION_LEVEL* pImpersonationLevel) const throw(...);
Parametreler
pImpersonationLevel
Kimliğe bürünme düzeyi bilgilerini alacak bir SECURITY_IMPERSONATION_LEVEL numaralandırma türü işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetLogonSessionId
Nesneyle ilişkilendirilmiş Oturum Açma Oturum Kimliğini almak için bu yöntemi çağırın CAccessToken .
bool GetLogonSessionId(LUID* pluid) const throw(...);
Parametreler
pluid
Oturum Açma Oturum Kimliği'ni alacak bir LUID işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Hata ayıklama derlemelerinde, pluid geçersiz bir değerse onay hatası oluşur.
CAccessToken::GetLogonSid
Nesneyle ilişkilendirilmiş Oturum Açma SID'sini almak için bu yöntemi çağırın CAccessToken .
bool GetLogonSid(CSid* pSid) const throw(...);
Parametreler
pSid
CSid Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Hata ayıklama derlemelerinde pSid geçersiz bir değerse onay hatası oluşur.
CAccessToken::GetOwner
Nesneyle ilişkili sahibi almak için bu yöntemi çağırın CAccessToken .
bool GetOwner(CSid* pSid) const throw(...);
Parametreler
pSid
CSid Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Sahip, bu erişim belirteci etkinken oluşturulan tüm nesnelerde varsayılan olarak ayarlanır.
CAccessToken::GetPrimaryGroup
Nesnesiyle ilişkilendirilmiş birincil grubu almak için bu yöntemi çağırın CAccessToken .
bool GetPrimaryGroup(CSid* pSid) const throw(...);
Parametreler
pSid
CSid Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Bu erişim belirteci etkinken oluşturulan tüm nesnelerde grup varsayılan olarak ayarlanır.
CAccessToken::GetPrivileges
Nesnesiyle ilişkili ayrıcalıkları almak için bu yöntemi çağırın CAccessToken .
bool GetPrivileges(CTokenPrivileges* pPrivileges) const throw(...);
Parametreler
pPrivileges
Ayrıcalıkları alacak CTokenPrivileges Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetProcessToken
verilen işlemden erişim belirteci ile başlatmak CAccessToken için bu yöntemi çağırın.
bool GetProcessToken(DWORD dwDesiredAccess, HANDLE hProcess = NULL) throw();
Parametreler
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
hProcess
Erişim belirteci açılmış olan işlemin işleyicisi. Varsayılan NULL değeri kullanılırsa geçerli işlem kullanılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
OpenProcessToken Win32 işlevini çağırır.
CAccessToken::GetProfile
Nesneyle ilişkilendirilmiş kullanıcı profiline işaret eden tanıtıcıyı almak için bu yöntemi çağırın CAccessToken .
HANDLE GetProfile() const throw();
Dönüş Değeri
Kullanıcı profiline işaret eden bir tanıtıcı veya profil yoksa NULL döndürür.
CAccessToken::GetSource
Nesnenin kaynağını almak için bu yöntemi çağırın CAccessToken .
bool GetSource(TOKEN_SOURCE* pSource) const throw(...);
Parametreler
pSource
bir TOKEN_SOURCE yapısının işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetStatistics
Nesnesiyle ilişkili bilgileri almak için bu yöntemi çağırın CAccessToken .
bool GetStatistics(TOKEN_STATISTICS* pStatistics) const throw(...);
Parametreler
pStatistics
TOKEN_STATISTICS yapısının işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetTerminalServicesSessionId
Nesnesiyle ilişkilendirilmiş Terminal Hizmetleri Oturum Kimliğini almak için bu yöntemi çağırın CAccessToken .
bool GetTerminalServicesSessionId(DWORD* pdwSessionId) const throw(...);
Parametreler
pdwSessionId
Terminal Hizmetleri Oturum Kimliği.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetThreadToken
belirtilen iş parçacığından belirteç ile başlatmak CAccessToken için bu yöntemi çağırın.
bool GetThreadToken(
DWORD dwDesiredAccess,
HANDLE hThread = NULL,
bool bOpenAsSelf = true) throw();
Parametreler
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
hThread
Erişim belirteci açılan iş parçacığının tanıtıcısı.
bOpenAsSelf
Erişim denetiminin yöntemini çağıran iş parçacığının güvenlik bağlamında mı yoksa çağıran GetThreadToken iş parçacığı için işlemin güvenlik bağlamında mı gerçekleştirildiğini gösterir.
Bu parametre FALSE ise, erişim denetimi çağıran iş parçacığının güvenlik bağlamı kullanılarak gerçekleştirilir. İş parçacığı bir istemcinin kimliğine bürüniyorsa, bu güvenlik bağlamı bir istemci işleminin bağlamı olabilir. Bu parametre TRUE ise, arama iş parçacığı için işlemin güvenlik bağlamı kullanılarak erişim denetimi yapılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetTokenId
Nesnesiyle ilişkilendirilmiş Belirteç Kimliğini almak için bu yöntemi çağırın CAccessToken .
bool GetTokenId(LUID* pluid) const throw(...);
Parametreler
pluid
Belirteç Kimliğini alacak bir LUID işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::GetType
Nesnenin belirteç türünü almak için bu yöntemi çağırın CAccessToken .
bool GetType(TOKEN_TYPE* pType) const throw(...);
Parametreler
pType
Başarılı olduğunda belirtecin türünü alan TOKEN_TYPE değişkeninin adresi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
TOKEN_TYPE numaralandırma türü, birincil belirteçle kimliğe bürünme belirtecini birbirinden ayıran değerler içerir.
CAccessToken::GetUser
Nesnesiyle ilişkili kullanıcıyı tanımlamak için bu yöntemi çağırın CAccessToken .
bool GetUser(CSid* pSid) const throw(...);
Parametreler
pSid
CSid Sınıfı nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
CAccessToken::HKeyCurrentUser
Nesneyle ilişkilendirilmiş kullanıcı profiline işaret eden tanıtıcıyı almak için bu yöntemi çağırın CAccessToken .
HKEY HKeyCurrentUser() const throw();
Dönüş Değeri
Kullanıcı profiline işaret eden bir tanıtıcı veya profil yoksa NULL döndürür.
CAccessToken::Impersonate
Bir iş parçacığına kimliğe bürünme CAccessToken atamak için bu yöntemi çağır.
bool Impersonate(HANDLE hThread = NULL) const throw(...);
Parametreler
hThread
Kimliğe bürünme belirtecinin atanması için iş parçacığının tanıtıcısı. Bu tanıtıcı TOKEN_IMPERSONATE erişim haklarıyla açılmış olmalıdır.
hThread NULL ise yöntemi, iş parçacığının kimliğe bürünme belirteci kullanmayı durdurmasına neden olur.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Hata ayıklama derlemelerinde, belirtecin geçerli bir işaretçisi yoksa CAccessToken onay hatası oluşur.
CAutoRevertImpersonation sınıfı, kimliğine bürünülen erişim belirteçlerini otomatik olarak geri döndürmek için kullanılabilir.
CAccessToken::ImpersonateLoggedOnUser
Çağıran iş parçacığının oturum açmış bir kullanıcının güvenlik bağlamının kimliğine bürünebilmesini sağlamak için bu yöntemi çağırın.
bool ImpersonateLoggedOnUser() const throw(...);
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Önemli
Bir kimliğe bürünme işlevine yapılan çağrı herhangi bir nedenle başarısız olursa, istemci kimliğine bürünülemez ve istemci isteği, çağrının yapıldığı işlemin güvenlik bağlamında yapılır. İşlem yüksek ayrıcalıklı bir hesap olarak veya bir yönetim grubunun üyesi olarak çalışıyorsa, kullanıcı başka bir şekilde izin verilmeyen eylemler gerçekleştirebilir. Bu nedenle, bu işlevin dönüş değeri her zaman doğrulanmalıdır.
CAccessToken::IsTokenRestricted
Nesnenin CAccessToken kısıtlanmış SID'lerin listesini içerip içermediğini test etmek için bu yöntemi çağırın.
bool IsTokenRestricted() const throw();
Dönüş Değeri
Nesne kısıtlayan SID'lerin listesini içeriyorsa TRUE, kısıtlayıcı SID'ler yoksa veya yöntem başarısız olursa YANLIŞ döndürür.
CAccessToken::LoadUserProfile
Nesnesiyle ilişkilendirilmiş kullanıcı profilini yüklemek için bu yöntemi çağırın CAccessToken .
bool LoadUserProfile() throw(...);
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Hata ayıklama derlemelerinde, geçerli bir belirteç içermiyorsa CAccessToken veya bir kullanıcı profili zaten varsa onay hatası oluşur.
CAccessToken::LogonUser
Verilen kimlik bilgileriyle ilişkilendirilmiş kullanıcı için oturum açma oturumu oluşturmak için bu yöntemi çağırın.
bool LogonUser(
LPCTSTR pszUserName,
LPCTSTR pszDomain,
LPCTSTR pszPassword,
DWORD dwLogonType = LOGON32_LOGON_INTERACTIVE,
DWORD dwLogonProvider = LOGON32_PROVIDER_DEFAULT) throw();
Parametreler
pszUserName
Kullanıcı adını belirten null ile sonlandırılan bir dizenin işaretçisi. Bu, oturum açmak için kullanıcı hesabının adıdır.
pszDomain
Hesap veritabanı pszUserName hesabını içeren etki alanının veya sunucunun adını belirten null olarak sonlandırılan bir dizenin işaretçisi.
pszPassword
pszUserName tarafından belirtilen kullanıcı hesabının düz metin parolasını belirten null olarak sonlandırılan bir dizenin işaretçisi.
dwLogonType
Gerçekleştirilecek oturum açma işleminin türünü belirtir. Diğer ayrıntılar için bkz . LogonUser .
dwLogonProvider
Oturum açma sağlayıcısını belirtir. Diğer ayrıntılar için bkz . LogonUser .
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Oturum açmadan kaynaklanan erişim belirteci ile CAccessTokenilişkilendirilir. Bu yöntemin başarılı olması için nesnenin CAccessToken SE_TCB_NAME ayrıcalıkları barındırması ve tutucuyu güvenilen bilgisayar tabanının bir parçası olarak tanımlaması gerekir. Gerekli ayrıcalıklarla ilgili daha fazla bilgi için bkz . LogonUser .
CAccessToken::OpenCOMClientToken
bu yöntemi, COM istemcisinden erişim belirteci ile başlatmak CAccessToken için bir istemciden gelen çağrıyı işleyen bir COM sunucusundan çağırın.
bool OpenCOMClientToken(
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parametreler
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
bImpersonate
TRUE ise, bu çağrı başarıyla tamamlanırsa geçerli iş parçacığı çağıran COM istemcisinin kimliğine bürünecektir. YANLIŞ ise erişim belirteci açılır, ancak bu çağrı tamamlandığında iş parçacığında kimliğe bürünme belirteci olmaz.
bOpenAsSelf
Erişim denetiminin GetThreadToken yöntemini çağıran iş parçacığının güvenlik bağlamı veya çağıran iş parçacığı için işlemin güvenlik bağlamı için yapılıp yapılmayacağını gösterir.
Bu parametre FALSE ise, erişim denetimi çağıran iş parçacığının güvenlik bağlamı kullanılarak gerçekleştirilir. İş parçacığı bir istemcinin kimliğine bürüniyorsa, bu güvenlik bağlamı bir istemci işleminin bağlamı olabilir. Bu parametre TRUE ise, arama iş parçacığı için işlemin güvenlik bağlamı kullanılarak erişim denetimi yapılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CAutoRevertImpersonation Sınıfı, bImpersonate bayrağı TRUE olarak ayarlanarak oluşturulan kimliğine bürünülen erişim belirteçlerini otomatik olarak geri döndürmek için kullanılabilir.
CAccessToken::OpenNamedPipeClientToken
İstemciden erişim belirteci ile başlatmak CAccessToken için adlandırılmış bir kanal üzerinden istekleri alan bir sunucudan bu yöntemi çağırın.
bool OpenNamedPipeClientToken(
HANDLE hPipe,
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parametreler
hPipe
Adlandırılmış kanala tanıtıcı.
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
bImpersonate
TRUE ise, bu çağrı başarıyla tamamlanırsa geçerli iş parçacığı çağrı kanalı istemcisinin kimliğine bürünecektir. YANLIŞ ise erişim belirteci açılır, ancak bu çağrı tamamlandığında iş parçacığında kimliğe bürünme belirteci olmaz.
bOpenAsSelf
Erişim denetiminin GetThreadToken yöntemini çağıran iş parçacığının güvenlik bağlamı veya çağıran iş parçacığı için işlemin güvenlik bağlamı için yapılıp yapılmayacağını gösterir.
Bu parametre FALSE ise, erişim denetimi çağıran iş parçacığının güvenlik bağlamı kullanılarak gerçekleştirilir. İş parçacığı bir istemcinin kimliğine bürüniyorsa, bu güvenlik bağlamı bir istemci işleminin bağlamı olabilir. Bu parametre TRUE ise, arama iş parçacığı için işlemin güvenlik bağlamı kullanılarak erişim denetimi yapılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CAutoRevertImpersonation Sınıfı, bImpersonate bayrağı TRUE olarak ayarlanarak oluşturulan kimliğine bürünülen erişim belirteçlerini otomatik olarak geri döndürmek için kullanılabilir.
CAccessToken::OpenRPCClientToken
İstemciden erişim belirteci ile başlatmak için bir RPC istemcisinden gelen çağrıyı CAccessToken işleyen bir sunucunun içinden bu yöntemi çağırın.
bool OpenRPCClientToken(
RPC_BINDING_HANDLE BindingHandle,
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true) throw(...);
Parametreler
BindingHandle
Sunucuda bir istemciye bağlamayı temsil eden bağlama tanıtıcısı.
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
bImpersonate
TRUE ise, bu çağrı başarıyla tamamlanırsa geçerli iş parçacığı çağıran RPC istemcisinin kimliğine bürünecektir. YANLIŞ ise erişim belirteci açılır, ancak bu çağrı tamamlandığında iş parçacığında kimliğe bürünme belirteci olmaz.
bOpenAsSelf
Erişim denetiminin GetThreadToken yöntemini çağıran iş parçacığının güvenlik bağlamı veya çağıran iş parçacığı için işlemin güvenlik bağlamı için yapılıp yapılmayacağını gösterir.
Bu parametre FALSE ise, erişim denetimi çağıran iş parçacığının güvenlik bağlamı kullanılarak gerçekleştirilir. İş parçacığı bir istemcinin kimliğine bürüniyorsa, bu güvenlik bağlamı bir istemci işleminin bağlamı olabilir. Bu parametre TRUE ise, arama iş parçacığı için işlemin güvenlik bağlamı kullanılarak erişim denetimi yapılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
CAutoRevertImpersonation Sınıfı, bImpersonate bayrağı TRUE olarak ayarlanarak oluşturulan kimliğine bürünülen erişim belirteçlerini otomatik olarak geri döndürmek için kullanılabilir.
CAccessToken::OpenThreadToken
Kimliğe bürünme düzeyini ayarlamak için bu yöntemi çağırın ve ardından belirtilen iş parçacığından belirteci ile başlatın CAccessToken .
bool OpenThreadToken(
DWORD dwDesiredAccess,
bool bImpersonate = false,
bool bOpenAsSelf = true,
SECURITY_IMPERSONATION_LEVEL sil = SecurityImpersonation) throw(...);
Parametreler
dwDesiredAccess
Erişim belirtecine istenen erişim türlerini belirten bir erişim maskesi belirtir. Bu istenen erişim türleri, hangi erişimlerin verildiğini veya reddedileceğini belirlemek için belirtecin DACL'siyle karşılaştırılır.
bImpersonate
TRUE ise, bu yöntem tamamlandıktan sonra iş parçacığı istenen kimliğe bürünme düzeyinde bırakılır. FALSE ise, iş parçacığı özgün kimliğe bürünme düzeyine geri döner.
bOpenAsSelf
Erişim denetiminin GetThreadToken yöntemini çağıran iş parçacığının güvenlik bağlamı veya çağıran iş parçacığı için işlemin güvenlik bağlamı için yapılıp yapılmayacağını gösterir.
Bu parametre FALSE ise, erişim denetimi çağıran iş parçacığının güvenlik bağlamı kullanılarak gerçekleştirilir. İş parçacığı bir istemcinin kimliğine bürüniyorsa, bu güvenlik bağlamı bir istemci işleminin bağlamı olabilir. Bu parametre TRUE ise, arama iş parçacığı için işlemin güvenlik bağlamı kullanılarak erişim denetimi yapılır.
sil
Belirtecin kimliğe bürünme düzeyini sağlayan SECURITY_IMPERSONATION_LEVEL numaralandırılmış türünü belirtir.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
OpenThreadTokenCAccessToken::GetThreadToken'a benzer, ancak iş parçacığının erişim belirtecinden başlatmadan CAccessToken önce kimliğe bürünme düzeyini ayarlar.
CAutoRevertImpersonation Sınıfı, bImpersonate bayrağı TRUE olarak ayarlanarak oluşturulan kimliğine bürünülen erişim belirteçlerini otomatik olarak geri döndürmek için kullanılabilir.
CAccessToken::P rivilegeCheck
Nesnede belirtilen bir ayrıcalık kümesinin etkinleştirilip etkinleştirilmediğini belirlemek için bu yöntemi çağırın CAccessToken .
bool PrivilegeCheck(
PPRIVILEGE_SET RequiredPrivileges,
bool* pbResult) const throw();
Parametreler
RequiredPrivileges
PRIVILEGE_SET yapısının işaretçisi.
pbResult
Yöntemin, belirtilen ayrıcalıklardan herhangi birinin veya tümünün nesnede etkinleştirilip etkinleştirilmediğini belirtmek için ayardığı bir değerin işaretçisi CAccessToken .
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Döndürdüğünde PrivilegeCheckAttributes , ilgili ayrıcalık etkinleştirilmişse her LUID_AND_ATTRIBUTES yapısının üyesi SE_PRIVILEGE_USED_FOR_ACCESS olarak ayarlanır. Bu yöntem PrivilegeCheck Win32 işlevini çağırır.
CAccessToken::Revert
Bir iş parçacığının kimliğe bürünme belirteci kullanmasını durdurmak için bu yöntemi çağırın.
bool Revert(HANDLE hThread = NULL) const throw();
Parametreler
hThread
Kimliğe bürünme işlemini geri almak için iş parçacığını işle.
hThread NULL ise, geçerli iş parçacığı varsayılır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Kimliğe bürünme belirteçlerinin geri çevrilmesi CAutoRevertImpersonation Sınıfı ile otomatik olarak gerçekleştirilebilir.
CAccessToken::SetDefaultDacl
Nesnenin varsayılan DACL'sini ayarlamak için bu yöntemi çağırın CAccessToken .
bool SetDefaultDacl(const CDacl& rDacl) throw(...);
Parametreler
rDacl
Yeni varsayılan CDacl Sınıfı bilgileri.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Varsayılan DACL, bu erişim belirtecinin etkin olduğu yeni nesneler oluşturulduğunda varsayılan olarak kullanılan DACL'dir.
CAccessToken::SetOwner
Nesnenin sahibini ayarlamak için bu yöntemi çağırın CAccessToken .
bool SetOwner(const CSid& rSid) throw(...);
Parametreler
rSid
Sahip bilgilerini içeren CSid Sınıfı nesnesi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Sahip, bu erişim belirteci etkinken oluşturulan yeni nesneler için kullanılan varsayılan sahiptir.
CAccessToken::SetPrimaryGroup
Nesnenin birincil grubunu ayarlamak için bu yöntemi çağırın CAccessToken .
bool SetPrimaryGroup(const CSid& rSid) throw(...);
Parametreler
rSid
Birincil grup bilgilerini içeren CSid Sınıfı nesnesi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Birincil grup, bu erişim belirteci etkinken oluşturulan yeni nesneler için varsayılan gruptur.