Třída CSid
Tato třída je obálka SID
pro strukturu (identifikátor zabezpečení).
Důležité
Tuto třídu a její členy nelze použít v aplikacích, které se spouští v prostředí Windows Runtime.
Syntaxe
class CSid;
Členové
Veřejné definice typedef
Název | Popis |
---|---|
CSid::CSidArray |
Pole CSid objektů. |
Veřejné konstruktory
Název | Popis |
---|---|
CSid::CSid |
Konstruktor |
CSid::~CSid |
Destruktor. |
Veřejné metody
Název | Popis |
---|---|
CSid::AccountName |
Vrátí název účtu přidruženého k objektu CSid . |
CSid::Domain |
Vrátí název domény přidružené k objektu CSid . |
CSid::EqualPrefix |
Testy SID (identifikátor zabezpečení) předpony rovnosti. |
CSid::GetLength |
Vrátí délku objektu CSid . |
CSid::GetPSID |
Vrátí ukazatel na SID strukturu. |
CSid::GetPSID_IDENTIFIER_AUTHORITY |
Vrátí ukazatel na SID_IDENTIFIER_AUTHORITY strukturu. |
CSid::GetSubAuthority |
Vrátí zadanou dílčí autoritu ve SID struktuře. |
CSid::GetSubAuthorityCount |
Vrátí počet dílčích ověření. |
CSid::IsValid |
Otestuje platnost objektu CSid . |
CSid::LoadAccount |
CSid Aktualizuje objekt s názvem účtu a doménou nebo existující SID strukturou. |
CSid::Sid |
Vrátí řetězec ID. |
CSid::SidNameUse |
Vrátí popis stavu objektu CSid . |
Operátory
Název | Popis |
---|---|
CSid::operator = |
Operátor přiřazení. |
CSid::operator const SID * |
Přetypuje CSid objekt na ukazatel na SID strukturu. |
Globální operátory
Název | Popis |
---|---|
operator == |
Testuje dva objekty popisovače zabezpečení pro rovnost. |
operator != |
Testuje dva objekty popisovače zabezpečení kvůli nerovnosti. |
operator < |
Porovná relativní hodnotu dvou objektů popisovače zabezpečení. |
operator > |
Porovná relativní hodnotu dvou objektů popisovače zabezpečení. |
operator <= |
Porovná relativní hodnotu dvou objektů popisovače zabezpečení. |
operator >= |
Porovná relativní hodnotu dvou objektů popisovače zabezpečení. |
Poznámky
Struktura SID
je struktura s proměnnou délkou, která slouží k jedinečné identifikaci uživatelů nebo skupin.
Aplikace by neměly strukturu upravovat SID
přímo, ale místo toho používají metody uvedené v této třídě obálky. Viz také AtlGetOwnerSid
, AtlSetGroupSid
, AtlGetGroupSid
, a AtlSetOwnerSid
.
Úvod k modelu řízení přístupu ve Windows najdete v tématu Řízení přístupu v sadě Windows SDK.
Požadavky
Hlavička: atlsecurity.h
CSid::AccountName
Vrátí název účtu přidruženého k objektu CSid
.
LPCTSTR AccountName() const throw(...);
Vrácená hodnota
LPCTSTR
Vrátí odkazující na název účtu.
Poznámky
Tato metoda se pokusí najít název zadaného SID
(identifikátoru zabezpečení). Úplné podrobnosti najdete v tématu LookupAccountSid
.
Pokud nelze najít žádný název SID
účtu, AccountName
vrátí prázdný řetězec. K tomuto výsledku může dojít, pokud vypršení časového limitu sítě zabrání této metodě najít název. Dochází také k identifikátorům zabezpečení bez odpovídajícího názvu účtu, například pro SID
identifikátory, které identifikují přihlašovací relaci.
CSid::CSid
Konstruktor
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(...);
Parametry
rhs
Existující CSid
objekt nebo SID
(identifikátor zabezpečení)
IdentifierAuthority
Autorita.
nSubAuthorityCount
Počet dílčích ověření.
pszAccountName
Název účtu.
pszSystem
Název systému. Tento řetězec může být název vzdáleného počítače. Pokud je tento řetězec NULL, použije se místo toho místní systém.
pSid
Ukazatel na SID
strukturu.
Poznámky
Konstruktor inicializuje CSid
objekt, nastaví interní datový člen na SidTypeInvalid
, nebo zkopírováním nastavení z existujícího CSid
nebo SID
existujícího účtu.
Pokud inicializace selže, konstruktor vyvolá CAtlException
třídu.
CSid::~CSid
Destruktor.
virtual ~CSid() throw();
Poznámky
Destruktor uvolní všechny prostředky získané objektem.
CSid::CSidArray
Pole CSid
objektů.
typedef CAtlArray<CSid> CSidArray;
Poznámky
Tento typdef určuje typ pole, který lze použít k načtení identifikátorů zabezpečení ze seznamu ACL (seznam řízení přístupu). Viz třída CAcl::GetAclEntries
.
CSid::Domain
Vrátí název domény přidružené k objektu CSid
.
LPCTSTR Domain() const throw(...);
Vrácená hodnota
LPCTSTR
Vrátí odkazování na doménu.
Poznámky
Tato metoda se pokusí najít název zadaného SID
(identifikátoru zabezpečení). Úplné podrobnosti najdete v tématu LookupAccountSid
.
Pokud nelze najít žádný název SID
účtu, Domain
vrátí doménu jako prázdný řetězec. K tomuto výsledku může dojít, pokud vypršení časového limitu sítě zabrání této metodě najít název. Dochází také k identifikátorům zabezpečení bez odpovídajícího názvu účtu, například pro SID
identifikátory, které identifikují přihlašovací relaci.
CSid::EqualPrefix
Testy SID
(identifikátor zabezpečení) předpony rovnosti.
bool EqualPrefix(const SID& rhs) const throw();
bool EqualPrefix(const CSid& rhs) const throw();
Parametry
rhs
Struktura SID
(identifikátor zabezpečení) nebo CSid
objekt, který chcete porovnat.
Vrácená hodnota
Vrátí TRUE
úspěch FALSE
při selhání.
Poznámky
Další informace najdete na webu EqualPrefixSid
.
CSid::GetLength
Vrátí délku objektu CSid
.
UINT GetLength() const throw();
Vrácená hodnota
Vrátí délku v bajtech objektu CSid
.
Poznámky
CSid
Pokud struktura není platná, je vrácená hodnota nedefinovaná. Před voláním GetLength
CSid::IsValid
ověřte CSid
platnost pomocí členské funkce.
Poznámka:
V části ladění sestavení funkce způsobí ASSERT, pokud CSid
objekt není platný.
CSid::GetPSID
Vrátí ukazatel na SID
strukturu (identifikátor zabezpečení).
const SID* GetPSID() const throw(...);
Vrácená hodnota
Vrátí adresu základní SID
struktury objektuCSid
.
CSid::GetPSID_IDENTIFIER_AUTHORITY
Vrátí ukazatel na SID_IDENTIFIER_AUTHORITY
strukturu.
const SID_IDENTIFIER_AUTHORITY* GetPSID_IDENTIFIER_AUTHORITY() const throw();
Vrácená hodnota
Pokud je metoda úspěšná, vrátí adresu SID_IDENTIFIER_AUTHORITY
struktury. Pokud selže, návratová hodnota není definována. K selhání může dojít, pokud CSid
objekt není platný, v takovém případě CSid::IsValid
metoda vrátí FALSE
. Funkci GetLastError
lze volat pro rozšířené informace o chybách.
Poznámka:
V části ladění sestavení funkce způsobí ASSERT, pokud CSid
objekt není platný.
CSid::GetSubAuthority
Vrátí zadanou SID
dílčí autoritu ve struktuře (identifikátor zabezpečení).
DWORD GetSubAuthority(DWORD nSubAuthority) const throw();
Parametry
nSubAuthority
Podauthorita.
Vrácená hodnota
Vrátí podauthoritu, na kterou nSubAuthority
odkazuje . Hodnota dílčího ověřování je relativní identifikátor (RID).
Poznámky
Parametr nSubAuthority
určuje hodnotu indexu identifikující prvek pole subauthority, který metoda vrátí. Metoda neprovádí žádné ověřovací testy pro tuto hodnotu. Aplikace může volat CSid::GetSubAuthorityCount
rozsah přijatelných hodnot.
Poznámka:
V části ladění sestavení funkce způsobí ASSERT, pokud CSid
objekt není platný.
CSid::GetSubAuthorityCount
Vrátí počet dílčích ověření.
UCHAR GetSubAuthorityCount() const throw();
Vrácená hodnota
Pokud je metoda úspěšná, návratová hodnota je počet dílčích ověření.
Pokud metoda selže, návratová hodnota není definována. Metoda selže, pokud CSid
je objekt neplatný. Pokud chcete získat rozšířené informace o chybě, zavolejte GetLastError
.
Poznámka:
V části ladění sestavení funkce způsobí ASSERT, pokud CSid
objekt není platný.
CSid::IsValid
Otestuje platnost objektu CSid
.
bool IsValid() const throw();
Vrácená hodnota
Vrátí TRUE
, pokud CSid
je objekt platný, FALSE
pokud ne. Pro tuto metodu neexistují žádné rozšířené informace o chybě; nevolejte GetLastError
.
Poznámky
Metoda IsValid
ověří CSid
objekt ověřením, že číslo revize je v známém rozsahu a že počet dílčích ověření je menší než maximum.
CSid::LoadAccount
CSid
Aktualizuje objekt s názvem účtu a doménou nebo existující SID
strukturou (identifikátor zabezpečení).
bool LoadAccount(
LPCTSTR pszAccountName,
LPCTSTR pszSystem = NULL) throw(...);
bool LoadAccount(
const SID* pSid,
LPCTSTR pszSystem = NULL) throw(...);
Parametry
pszAccountName
Název účtu.
pszSystem
Název systému. Tento řetězec může být název vzdáleného počítače. Pokud je tento řetězec NULL, použije se místo toho místní systém.
pSid
Ukazatel na SID
strukturu.
Vrácená hodnota
Vrátí TRUE
úspěch FALSE
při selhání. Pokud chcete získat rozšířené informace o chybě, zavolejte GetLastError
.
Poznámky
LoadAccount
pokusí najít identifikátor zabezpečení pro zadaný název. Další informace najdete na webu LookupAccountSid
.
CSid::operator =
Operátor přiřazení.
CSid& operator= (const CSid& rhs) throw(...);
CSid& operator= (const SID& rhs) throw(...);
Parametry
rhs
Identifikátor SID
zabezpečení nebo CSid
přiřazení k objektu CSid
.
Vrácená hodnota
Vrátí odkaz na aktualizovaný CSid
objekt.
operator ==
Testuje dva objekty popisovače zabezpečení pro rovnost.
bool operator==(
const CSid& lhs,
const CSid& rhs) throw();
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru ==
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru ==
.
Vrácená hodnota
TRUE
jsou-li popisovače zabezpečení stejné, jinak FALSE
.
operator !=
Testuje dva objekty popisovače zabezpečení pro nerovnost.
bool operator!=(
const CSid& lhs,
const CSid& rhs) throw();
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru !=
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru !=
.
Vrácená hodnota
TRUE
pokud popisovače zabezpečení nejsou stejné, jinak FALSE
.
operator <
Porovná relativní hodnotu dvou objektů popisovače zabezpečení.
bool operator<(
const CSid& lhs,
const CSid& rhs) throw();
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru <
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru <
.
Vrácená hodnota
TRUE
je-li lhs
menší než rhs
, jinak FALSE
.
operator <=
Porovná relativní hodnotu dvou objektů popisovače zabezpečení.
bool operator<=(
const CSid& lhs,
const CSid& rhs) throw();
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru <=
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru <=
.
Vrácená hodnota
TRUE
je-li lhs
menší nebo rovna rhs
, jinak FALSE
.
operator >
Porovná relativní hodnotu dvou objektů popisovače zabezpečení.
bool operator>(
const CSid& lhs,
const CSid& rhs) throw();
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru >
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru >
.
Vrácená hodnota
TRUE
je-li lhs
větší než rhs
, jinak FALSE
.
operator >=
Porovná relativní hodnotu dvou objektů popisovače zabezpečení.
bool operator>=(
const CSid& lhs,
const CSid& rhs) throw());
Parametry
lhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na levé straně operátoru >=
.
rhs
( SID
identifikátor zabezpečení) nebo CSid
který se zobrazí na pravé straně operátoru >=
.
Vrácená hodnota
TRUE
je-li lhs
větší než nebo rovno rhs
, jinak FALSE
.
CSid::operator const SID *
Přetypuje CSid
objekt na ukazatel na SID
strukturu (identifikátor zabezpečení).
operator const SID *() const;
Poznámky
Vrátí adresu SID
struktury.
CSid::Sid
SID
Vrátí strukturu (identifikátor zabezpečení) jako řetězec.
LPCTSTR Sid() const throw(...);
Vrácená hodnota
SID
Vrátí strukturu jako řetězec ve formátu vhodném pro zobrazení, uložení nebo přenos. Ekvivalent k ConvertSidToStringSid
.
CSid::SidNameUse
Vrátí popis stavu objektu CSid
.
SID_NAME_USE SidNameUse() const throw();
Vrácená hodnota
Vrátí hodnotu datového členu, který ukládá hodnotu popisující stav objektu CSid
.
Hodnota | Popis |
---|---|
SidTypeUser | Označuje uživatele SID (identifikátor zabezpečení). |
SidTypeGroup | Označuje skupinu SID . |
SidTypeDomain | Označuje doménu SID . |
SidTypeAlias | Označuje alias SID . |
SidTypeWellKnownGroup | Označuje známou SID skupinu. |
SidTypeDeletedAccount | Označuje pro odstraněný SID účet. |
SidTypeInvalid | Označuje neplatnou SID hodnotu . |
SidTypeUnknown | Označuje neznámý SID typ. |
SidTypeComputer | Označuje počítač SID . |
Poznámky
Volání CSid::LoadAccount
pro aktualizaci objektu CSid
před voláním SidNameUse
, aby vrátilo jeho stav. SidNameUse
nezmění stav objektu (voláním nebo LookupAccountName
LookupAccountSid
), ale vrátí pouze aktuální stav.
Viz také
Ukázka zabezpečení
Přehled třídy
Globální funkce zabezpečení
Operátory