Aracılığıyla paylaş


CTokenPrivileges Sınıfı

Uyarı

Etkin Şablon Kitaplığı (ATL) desteklenmeye devam eder. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.

Bu sınıf, yapısı için TOKEN_PRIVILEGES bir 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 CTokenPrivileges

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CTokenPrivileges::CTokenPrivileges Oluşturucu.
CTokenPrivileges::~CTokenPrivileges Yok edici.

Genel Yöntemler

Veri Akışı Adı Açıklama
CTokenPrivileges::Add Nesneye CTokenPrivileges bir veya daha fazla ayrıcalık ekler.
CTokenPrivileges::D elete Nesneden CTokenPrivileges bir ayrıcalık siler.
CTokenPrivileges::D eleteAll Nesneden CTokenPrivileges tüm ayrıcalıkları siler.
CTokenPrivileges::GetCount Nesnedeki CTokenPrivileges ayrıcalık girdilerinin sayısını döndürür.
CTokenPrivileges::GetDisplayNames Nesnede CTokenPrivileges yer alan ayrıcalıkların görünen adlarını alır.
CTokenPrivileges::GetLength Nesne tarafından TOKEN_PRIVILEGES temsil edilen yapıyı CTokenPrivileges tutmak için gereken arabellek boyutunu bayt cinsinden döndürür.
CTokenPrivileges::GetLuidsAndAttributes Nesneden CTokenPrivileges yerel olarak benzersiz tanımlayıcıları (LUID) ve öznitelik bayraklarını alır.
CTokenPrivileges::GetNamesAndAttributes Nesneden CTokenPrivileges ayrıcalık adlarını ve öznitelik bayraklarını alır.
CTokenPrivileges::GetPTOKEN_PRIVILEGES Yapıya TOKEN_PRIVILEGES bir işaretçi döndürür.
CTokenPrivileges::LookupPrivilege Belirli bir ayrıcalık adıyla ilişkili özniteliği alır.

Ortak İşleçler

Veri Akışı Adı Açıklama
CTokenPrivileges::operator const TOKEN_PRIVILEGES * Bir değeri yapıya bir işaretçiye dönüştürür TOKEN_PRIVILEGES .
CTokenPrivileges::operator = Atama işleci.

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.

Erişim belirteci, her kullanıcıya verilen çeşitli güvenlik ayrıcalıklarını açıklamak için kullanılır. Ayrıcalık, yerel olarak benzersiz tanımlayıcı ( LUID) olarak adlandırılan 64 bitlik bir sayı ve tanımlayıcı dizeden oluşur.

sınıfıCTokenPrivileges, TOKEN_PRIVILEGES yapısı için bir sarmalayıcıdır ve 0 veya daha fazla ayrıcalık içerir. Sağlanan sınıf yöntemleri kullanılarak ayrıcalıklar eklenebilir, silinebilir veya sorgulanabilir.

Windows'ta erişim denetimi modeline giriş için bkz . Windows SDK'sında Erişim Denetimi .

Gereksinimler

Üst bilgi: atlsecurity.h

CTokenPrivileges::Add

Erişim belirteci nesnesine CTokenPrivileges bir veya daha fazla ayrıcalık ekler.

bool Add(LPCTSTR pszPrivilege, bool bEnable) throw(...);
void Add(const TOKEN_PRIVILEGES& rPrivileges) throw(...);

Parametreler

pszPrivilege
WINNT'de tanımlandığı gibi, ayrıcalığının adını belirten null olarak sonlandırılan bir dizenin işaretçisi. H üst bilgi dosyası.

bEnable
True ise ayrıcalık etkinleştirilir. False ise ayrıcalık devre dışı bırakılır.

rPrivileges
TOKEN_PRIVILEGES yapısına başvuru. Ayrıcalıklar ve öznitelikler bu yapıdan kopyalanır ve nesnesine CTokenPrivileges eklenir.

Dönüş Değeri

Ayrıcalıklar başarıyla eklenirse bu yöntemin ilk biçimi true, aksi takdirde false döndürür.

CTokenPrivileges::CTokenPrivileges

Oluşturucu.

CTokenPrivileges() throw();
CTokenPrivileges(const CTokenPrivileges& rhs) throw(... );
CTokenPrivileges(const TOKEN_PRIVILEGES& rPrivileges) throw(...);

Parametreler

Rhs
Yeni CTokenPrivileges nesneye atanacak nesne.

rPrivileges
Yeni CTokenPrivileges yapısı.

Açıklamalar

CTokenPrivileges Nesnesi isteğe bağlı olarak bir TOKEN_PRIVILEGES yapı veya önceden tanımlanmış CTokenPrivileges bir nesne kullanılarak oluşturulabilir.

CTokenPrivileges::~CTokenPrivileges

Yok edici.

virtual ~CTokenPrivileges() throw();

Açıklamalar

Yıkıcı, ayrılan tüm kaynakları boşaltıyor.

CTokenPrivileges::D elete

Erişim belirteci nesnesinden CTokenPrivileges bir ayrıcalığı siler.

bool Delete(LPCTSTR pszPrivilege) throw();

Parametreler

pszPrivilege
WINNT'de tanımlandığı gibi, ayrıcalığının adını belirten null olarak sonlandırılan bir dizenin işaretçisi. H üst bilgi dosyası. Örneğin, bu parametre sabit SE_SECURITY_NAME veya buna karşılık gelen "SeSecurityPrivilege" dizesini belirtebilir.

Dönüş Değeri

Ayrıcalık başarıyla silindiyse true, aksi takdirde false değerini döndürür.

Açıklamalar

Bu yöntem, kısıtlanmış belirteçler oluşturmak için bir araç olarak kullanışlıdır.

CTokenPrivileges::D eleteAll

Erişim belirteci nesnesinden CTokenPrivileges tüm ayrıcalıkları siler.

void DeleteAll() throw();

Açıklamalar

Erişim belirteci nesnesindeki CTokenPrivileges tüm ayrıcalıkları siler.

CTokenPrivileges::GetDisplayNames

Erişim belirteci nesnesinde CTokenPrivileges bulunan ayrıcalıkların görünen adlarını alır.

void GetDisplayNames(CNames* pDisplayNames) const throw(...);

Parametreler

pDisplayNames
Bir nesne dizisi işaretçisi CString . CNames tür tanımı olarak tanımlanır: CTokenPrivileges::CAtlArray<CString>.

Açıklamalar

parametresi pDisplayNames , nesnenin CString içerdiği ayrıcalıklara karşılık gelen görünen adları alacak bir nesne dizisinin işaretçisidir CTokenPrivileges . Bu yöntem yalnızca WINNT.H'nin Tanımlı Ayrıcalıklar bölümünde belirtilen ayrıcalıklar için görünen adları alır.

Bu yöntem görüntülenebilir bir ad alır: örneğin, öznitelik adı SE_REMOTE_SHUTDOWN_NAME ise, görüntülenebilir ad "Uzak bir sistemden kapatmaya zorla" olur. Sistem adını almak için CTokenPrivileges::GetNamesAndAttributes kullanın.

CTokenPrivileges::GetCount

Nesnedeki CTokenPrivileges ayrıcalık girdilerinin sayısını döndürür.

UINT GetCount() const throw();

Dönüş Değeri

Nesnede CTokenPrivileges bulunan ayrıcalık sayısını döndürür.

CTokenPrivileges::GetLength

Nesnenin CTokenPrivileges uzunluğunu döndürür.

UINT GetLength() const throw();

Dönüş Değeri

Nesne tarafından TOKEN_PRIVILEGES temsil edilen bir CTokenPrivileges yapıyı tutmak için gereken bayt sayısını döndürür ve içerdiği tüm ayrıcalık girdileri de dahil.

CTokenPrivileges::GetLuidsAndAttributes

Nesneden CTokenPrivileges yerel olarak benzersiz tanımlayıcıları (LUID) ve öznitelik bayraklarını alır.

void GetLuidsAndAttributes(
    CLUIDArray* pPrivileges,
    CAttributes* pAttributes = NULL) const throw(...);

Parametreler

pPrivileges
BIR LUID nesneleri dizisi işaretçisi. CLUIDArray olarak CAtlArray<LUID> CLUIDArraytanımlanan bir tür tanımıdır.

pAttributes
DWORD nesneleri dizisinin işaretçisi. Bu parametre atlanırsa veya NULL ise, öznitelikler alınmaz. CAttributes olarak CAtlArray <DWORD> CAttributestanımlanan bir tür tanımıdır.

Açıklamalar

Bu yöntem, erişim belirteci nesnesinde CTokenPrivileges yer alan tüm ayrıcalıkları numaralandırır ve tek tek LUID'leri ve (isteğe bağlı olarak) öznitelik bayraklarını dizi nesnelerine yerleştirir.

CTokenPrivileges::GetNamesAndAttributes

Nesneden CTokenPrivileges ad ve öznitelik bayraklarını alır.

void GetNamesAndAttributes(
    CNames* pNames,
    CAttributes* pAttributes = NULL) const throw(...);

Parametreler

pName'ler
Bir nesne dizisi işaretçisi CString . CNames olarak CAtlArray <CString> CNamestanımlanan bir tür tanımıdır.

pAttributes
DWORD nesneleri dizisinin işaretçisi. Bu parametre atlanırsa veya NULL ise, öznitelikler alınmaz. CAttributes olarak CAtlArray <DWORD> CAttributestanımlanan bir tür tanımıdır.

Açıklamalar

Bu yöntem, nesnede CTokenPrivileges yer alan tüm ayrıcalıkları numaralandırarak adı ve (isteğe bağlı olarak) öznitelik bayraklarını dizi nesnelerine yerleştirir.

Bu yöntem, görüntülenebilir ad yerine öznitelik adını alır: örneğin, öznitelik adı SE_REMOTE_SHUTDOWN_NAME ise sistem adı "SeRemoteShutdownPrivilege"dir. Görüntülenebilir adı almak için CTokenPrivileges::GetDisplayNames yöntemini kullanın.

CTokenPrivileges::GetPTOKEN_PRIVILEGES

Yapıya TOKEN_PRIVILEGES bir işaretçi döndürür.

const TOKEN_PRIVILEGES* GetPTOKEN_PRIVILEGES() const throw(...);

Dönüş Değeri

TOKEN_PRIVILEGES yapısına bir işaretçi döndürür.

CTokenPrivileges::LookupPrivilege

Belirli bir ayrıcalık adıyla ilişkili özniteliği alır.

bool LookupPrivilege(
    LPCTSTR pszPrivilege,
    DWORD* pdwAttributes = NULL) const throw(...);

Parametreler

pszPrivilege
WINNT'de tanımlandığı gibi, ayrıcalığının adını belirten null olarak sonlandırılan bir dizenin işaretçisi. H üst bilgi dosyası. Örneğin, bu parametre sabit SE_SECURITY_NAME veya buna karşılık gelen "SeSecurityPrivilege" dizesini belirtebilir.

pdwAttributes
Öznitelikleri alan bir değişkenin işaretçisi.

Dönüş Değeri

Öznitelik başarıyla alınırsa true, aksi takdirde false döndürür.

CTokenPrivileges::operator =

Atama işleci.

CTokenPrivileges& operator= (const TOKEN_PRIVILEGES& rPrivileges) throw(...);
CTokenPrivileges& operator= (const CTokenPrivileges& rhs) throw(...);

Parametreler

rPrivileges
CTokenPrivileges yapısı.

Rhs
CTokenPrivileges Nesneye atanacak nesne.

Dönüş Değeri

Güncelleştirilmiş CTokenPrivileges nesneyi döndürür.

CTokenPrivileges::operator const TOKEN_PRIVILEGES *

Bir değeri yapıya bir işaretçiye dönüştürür TOKEN_PRIVILEGES .

operator const TOKEN_PRIVILEGES *() const throw(...);

Açıklamalar

bir değeri TOKEN_PRIVILEGES yapısına bir işaretçiye dönüştürür.

Ayrıca bkz.

Güvenlik Örneği
TOKEN_PRIVILEGES
LUID
LUID_AND_ATTRIBUTES
Sınıfa Genel Bakış
Güvenlik Genel İşlevleri