Aracılığıyla paylaş


CSid sınıfı

Bu sınıf bir (güvenlik tanımlayıcısı) yapısı için sarmalayıcıdır SID .

Önemli

Bu sınıf ve üyeleri Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz.

Sözdizimi

class CSid;

Üyeler

Genel tür tanımları

Veri Akışı Adı Açıklama
CSid::CSidArray Bir nesne dizisi CSid .

Ortak oluşturucular

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

Genel yöntemler

Veri Akışı Adı Açıklama
CSid::AccountName Nesneyle ilişkili hesabın CSid adını döndürür.
CSid::Domain Nesneyle CSid ilişkili etki alanının adını döndürür.
CSid::EqualPrefix Eşitlik için testler SID (güvenlik tanımlayıcısı) ön ekleri.
CSid::GetLength Nesnenin CSid uzunluğunu döndürür.
CSid::GetPSID Yapıya SID bir işaretçi döndürür.
CSid::GetPSID_IDENTIFIER_AUTHORITY Yapıya SID_IDENTIFIER_AUTHORITY bir işaretçi döndürür.
CSid::GetSubAuthority Bir yapıda belirtilen alt SID kimlik doğrulamasını döndürür.
CSid::GetSubAuthorityCount Alt kimlik doğrulama sayısını döndürür.
CSid::IsValid Nesnenin CSid geçerliliğini sınar.
CSid::LoadAccount CSid Hesap adı ve etki alanı veya var olan SID bir yapı verilen nesneyi güncelleştirir.
CSid::Sid Kimlik dizesini döndürür.
CSid::SidNameUse Nesnenin durumunun CSid açıklamasını döndürür.

İşleçler

Veri Akışı Adı Açıklama
CSid::operator = Atama işleci.
CSid::operator const SID * Bir nesneyi bir CSid işaretçiye bir SID yapıya dönüştürür.

Genel İşleçler

Veri Akışı Adı Açıklama
operator == İki güvenlik tanımlayıcısı nesnesini eşitlik için test eder
operator != Eşitsizlik için iki güvenlik tanımlayıcısı nesnesini test eder
operator < İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.
operator > İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.
operator <= İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.
operator >= İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.

Açıklamalar

Yapı SID , kullanıcıları veya grupları benzersiz olarak tanımlamak için kullanılan değişken uzunlukta bir yapıdır.

Uygulamalar yapıyı SID doğrudan değiştirmemeli, bunun yerine bu sarmalayıcı sınıfında sağlanan yöntemleri kullanmalıdır. Ayrıca AtlGetOwnerSidbkz. , AtlSetGroupSidAtlGetGroupSid, ve AtlSetOwnerSid.

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

Gereksinimler

Üst bilgi: atlsecurity.h

CSid::AccountName

Nesneyle ilişkili hesabın CSid adını döndürür.

LPCTSTR AccountName() const throw(...);

Dönüş değeri

Hesabın LPCTSTR adına işaret edeni döndürür.

Açıklamalar

Bu yöntem, belirtilen SID (güvenlik tanımlayıcısı) için bir ad bulmaya çalışır. Tüm ayrıntılar için bkz LookupAccountSid. .

için SID hesap adı bulunamıyorsa boş AccountName bir dize döndürür. Bu sonuç, ağ zaman aşımı bu yöntemin adı bulmasını engellerse ortaya çıkabilir. Ayrıca, oturum açma oturumunu tanımlayan bir SID gibi karşılık gelen hesap adı olmayan güvenlik tanımlayıcıları için de gerçekleşir.

CSid::CSid

Oluşturucu.

CSid() throw();
CSid(const SID& rhs) throw(...);
CSid(const CSid& rhs) throw(...);

CSid(
    const SID_IDENTIFIER_AUTHORITY& IdentifierAuthority,
    BYTE nSubAuthorityCount,
    ...) throw(...);

explicit CSid(
    LPCTSTR pszAccountName,
    LPCTSTR pszSystem = NULL) throw(...);

explicit CSid(
    const SID* pSid,
    LPCTSTR pszSystem = NULL) throw(...);

Parametreler

rhs
Var olan CSid bir nesne veya SID (güvenlik tanımlayıcısı) yapısı.

IdentifierAuthority
Otorite.

nSubAuthorityCount
Alt kimlik doğrulaması sayısı.

pszAccountName
Hesap adı.

pszSystem
Sistem adı. Bu dize, uzak bir bilgisayarın adı olabilir. Bu dize NULL ise, bunun yerine yerel sistem kullanılır.

pSid
Bir yapıya işaretçi SID .

Açıklamalar

Oluşturucu, bir iç veri üyesini CSid olarak SidTypeInvalidayarlayarak veya ayarları var olan bir , SIDveya mevcut CSidhesaptan kopyalayarak nesnesini başlatır.

Başlatma başarısız olursa oluşturucu bir CAtlException Sınıf oluşturur.

CSid::~CSid

Yok edici.

virtual ~CSid() throw();

Açıklamalar

Yıkıcı, nesnesi tarafından alınan tüm kaynakları serbesttir.

CSid::CSidArray

Bir nesne dizisi CSid .

typedef CAtlArray<CSid> CSidArray;

Açıklamalar

Bu typedef, bir ACL'den (erişim-denetim listesi) güvenlik tanımlayıcılarını almak için kullanılabilecek dizi türünü belirtir. Bkz. CAcl::GetAclEntries.

CSid::Domain

Nesneyle CSid ilişkili etki alanının adını döndürür.

LPCTSTR Domain() const throw(...);

Dönüş değeri

LPCTSTR Etki alanına işaret edeni döndürür.

Açıklamalar

Bu yöntem, belirtilen SID (güvenlik tanımlayıcısı) için bir ad bulmaya çalışır. Tüm ayrıntılar için bkz LookupAccountSid. .

için SID hesap adı bulunamıyorsa, Domain etki alanını boş bir dize olarak döndürür. Bu sonuç, ağ zaman aşımı bu yöntemin adı bulmasını engellerse ortaya çıkabilir. Ayrıca, oturum açma oturumunu tanımlayan bir SID gibi karşılık gelen hesap adı olmayan güvenlik tanımlayıcıları için de gerçekleşir.

CSid::EqualPrefix

Eşitlik için testler SID (güvenlik tanımlayıcısı) ön ekleri.

bool EqualPrefix(const SID& rhs) const throw();
bool EqualPrefix(const CSid& rhs) const throw();

Parametreler

rhs
Karşılaştıracak SID (güvenlik tanımlayıcısı) yapısı veya CSid nesnesi.

Dönüş değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Daha fazla bilgi için bkz. EqualPrefixSid.

CSid::GetLength

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

UINT GetLength() const throw();

Dönüş değeri

Nesnenin bayt CSid cinsinden uzunluğunu döndürür.

Açıklamalar

CSid Yapı geçerli değilse, dönüş değeri tanımsız olur. çağrısından GetLengthönce, geçerli olduğunu CSid doğrulamak için üye işlevini kullanınCSid::IsValid.

Not

Hata ayıklama derlemeleri altında, nesne geçerli değilse işlev bir ASSERT'a CSid neden olur.

CSid::GetPSID

Bir (güvenlik tanımlayıcısı) yapısına bir SID işaretçi döndürür.

const SID* GetPSID() const throw(...);

Dönüş değeri

Nesnenin temel alınan SID yapısının CSid adresini döndürür.

CSid::GetPSID_IDENTIFIER_AUTHORITY

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

const SID_IDENTIFIER_AUTHORITY* GetPSID_IDENTIFIER_AUTHORITY() const throw();

Dönüş değeri

Yöntem başarılı olursa, yapının adresini SID_IDENTIFIER_AUTHORITY döndürür. Başarısız olursa, dönüş değeri tanımlanmamış olur. Nesne geçerli değilse CSid hata oluşabilir ve bu durumda CSid::IsValid yöntemi döndürür FALSE. genişletilmiş hata bilgileri için işlev GetLastError çağrılabilir.

Not

Hata ayıklama derlemeleri altında, nesne geçerli değilse işlev bir ASSERT'a CSid neden olur.

CSid::GetSubAuthority

(Güvenlik tanımlayıcısı) yapısında belirtilen bir SID alt kimlik doğrulamasını döndürür.

DWORD GetSubAuthority(DWORD nSubAuthority) const throw();

Parametreler

nSubAuthority
Alt kimlik doğrulaması.

Dönüş değeri

tarafından nSubAuthoritybaşvuruda bulunan alt kimlik doğrulamasını döndürür. Alt kimlik doğrulama değeri göreli bir tanımlayıcıdır (RID).

Açıklamalar

parametresi, nSubAuthority yöntemin döndüreceği alt kimlik doğrulama dizisi öğesini tanımlayan bir dizin değeri belirtir. yöntemi bu değer üzerinde doğrulama testi gerçekleştirmez. Bir uygulama, kabul edilebilir değer aralığını bulmak için çağırabilir CSid::GetSubAuthorityCount .

Not

Hata ayıklama derlemeleri altında, nesne geçerli değilse işlev bir ASSERT'a CSid neden olur.

CSid::GetSubAuthorityCount

Alt kimlik doğrulama sayısını döndürür.

UCHAR GetSubAuthorityCount() const throw();

Dönüş değeri

Yöntem başarılı olursa, dönüş değeri alt kimlik doğrulama sayısıdır.

Yöntem başarısız olursa, dönüş değeri tanımlanmamış olur. Nesne geçersizse CSid yöntemi başarısız olur. Genişletilmiş hata bilgilerini almak için çağrısında bulunur GetLastError.

Not

Hata ayıklama derlemeleri altında, nesne geçerli değilse işlev bir ASSERT'a CSid neden olur.

CSid::IsValid

Nesnenin CSid geçerliliğini sınar.

bool IsValid() const throw();

Dönüş değeri

Nesne geçerliyseCSid, FALSE değilse döndürürTRUE. Bu yöntem için genişletilmiş hata bilgisi yoktur; arama GetLastError.

Açıklamalar

yöntemi, IsValid düzeltme numarasının CSid bilinen bir aralık içinde olduğunu ve alt kimlik doğrulaması sayısının üst sınırdan az olduğunu doğrulayarak nesnesini doğrular.

CSid::LoadAccount

CSid Hesap adı ve etki alanı veya var olan SID (güvenlik tanımlayıcısı) yapısı verilen nesneyi güncelleştirir.

bool LoadAccount(
    LPCTSTR pszAccountName,
    LPCTSTR pszSystem = NULL) throw(...);

bool LoadAccount(
    const SID* pSid,
    LPCTSTR pszSystem = NULL) throw(...);

Parametreler

pszAccountName
Hesap adı.

pszSystem
Sistem adı. Bu dize, uzak bir bilgisayarın adı olabilir. Bu dize NULL ise, bunun yerine yerel sistem kullanılır.

pSid
Bir yapıya işaretçi SID .

Dönüş değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE. Genişletilmiş hata bilgilerini almak için çağrısında bulunur GetLastError.

Açıklamalar

LoadAccount belirtilen ad için bir güvenlik tanımlayıcısı bulmaya çalışır. Daha fazla bilgi için bkz. LookupAccountSid.

CSid::operator =

Atama işleci.

CSid& operator= (const CSid& rhs) throw(...);
CSid& operator= (const SID& rhs) throw(...);

Parametreler

rhs
SID (güvenlik tanımlayıcısı) veya CSid nesnesine atanacakCSid.

Dönüş değeri

Güncelleştirilmiş CSid nesneye bir başvuru döndürür.

operator ==

Eşitlik için iki güvenlik tanımlayıcısı nesnesini test eder.

bool operator==(
    const CSid& lhs,
    const CSid& rhs) throw();

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı==) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı==) veya CSid .

Dönüş değeri

TRUE güvenlik tanımlayıcıları eşitse, aksi takdirde FALSE.

operator !=

Eşitsizlik için iki güvenlik tanımlayıcısı nesnesini test eder.

bool operator!=(
    const CSid& lhs,
    const CSid& rhs) throw();

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı!=) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı!=) veya CSid .

Dönüş değeri

TRUE güvenlik tanımlayıcıları eşit değilse, aksi takdirde FALSE.

operator <

İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.

bool operator<(
    const CSid& lhs,
    const CSid& rhs) throw();

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı<) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı<) veya CSid .

Dönüş değeri

TRUEdeğerinden küçükselhs, değilse FALSE.rhs

operator <=

İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.

bool operator<=(
    const CSid& lhs,
    const CSid& rhs) throw();

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı<=) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı<=) veya CSid .

Dönüş değeri

TRUE değerinden küçük veya eşitse lhs rhs, değilse FALSE.

operator >

İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.

bool operator>(
    const CSid& lhs,
    const CSid& rhs) throw();

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı>) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı>) veya CSid .

Dönüş değeri

TRUEdeğerinden büyükselhs, değilse FALSE.rhs

operator >=

İki güvenlik tanımlayıcısı nesnesinin göreli değerini karşılaştırır.

bool operator>=(
    const CSid& lhs,
    const CSid& rhs) throw());

Parametreler

lhs
İşlecin SID sol tarafında görünen (güvenlik tanımlayıcısı>=) veya CSid .

rhs
İşlecin SID sağ tarafında görünen (güvenlik tanımlayıcısı>=) veya CSid .

Dönüş değeri

TRUE değerinden büyük veya buna eşitse lhs rhs, değilse FALSE.

CSid::operator const SID *

Bir CSid nesneyi bir işaretçiye (güvenlik tanımlayıcısı) yapısına SID dönüştürür.

operator const SID *() const;

Açıklamalar

Yapının adresini SID döndürür.

CSid::Sid

SID (güvenlik tanımlayıcısı) yapısını dize olarak döndürür.

LPCTSTR Sid() const throw(...);

Dönüş değeri

Yapıyı SID görüntü, depolama veya iletim için uygun bir biçimde bir dize olarak döndürür. ile eşdeğerdir ConvertSidToStringSid.

CSid::SidNameUse

Nesnenin durumunun CSid açıklamasını döndürür.

SID_NAME_USE SidNameUse() const throw();

Dönüş değeri

Nesnenin durumunu açıklayan bir değeri depolayan veri üyesinin CSid değerini döndürür.

Value Açıklama
SidTypeUser Bir kullanıcıyı SID (güvenlik tanımlayıcısı) gösterir.
SidTypeGroup Bir grubu SIDgösterir.
SidTypeDomain Bir etki alanını SIDgösterir.
SidTypeAlias diğer adını SIDgösterir.
SidTypeWellKnownGroup İyi bilinen bir grup için bir SID gösterir.
SidTypeDeletedAccount Silinen bir hesap için bir SID belirtir.
SidTypeInvalid Geçersiz SIDbir belirtir.
SidTypeUnknown Bilinmeyen SID bir türü gösterir.
SidTypeComputer Bir bilgisayar için öğesini SID gösterir.

Açıklamalar

Durumunu döndürmek CSid için çağırmadan SidNameUse önce nesneyi güncelleştirmek için çağrısı CSid::LoadAccount yapın. SidNameUsenesnenin durumunu değiştirmez (veya LookupAccountSidçağrısı LookupAccountName yaparak), ancak yalnızca geçerli durumu döndürür.

Ayrıca bkz.

Güvenlik örneği
Sınıfa genel bakış
Güvenlik genel işlevleri
İşleçler