Share via


CSid klas

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 SID structuur (beveiligings-id).

Belangrijk

Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in De Windows Runtime.

Syntaxis

class CSid;

Leden

Openbare typedefs

Naam Description
CSid::CSidArray Een matrix met CSid objecten.

Openbare constructors

Naam Description
CSid::CSid De constructor.
CSid::~CSid De destructor.

Openbare methoden

Naam Description
CSid::AccountName Retourneert de naam van het account dat is gekoppeld aan het CSid object.
CSid::Domain Retourneert de naam van het domein dat is gekoppeld aan het CSid object.
CSid::EqualPrefix Test SID (beveiligings-id)-voorvoegsels voor gelijkheid.
CSid::GetLength Retourneert de lengte van het CSid object.
CSid::GetPSID Retourneert een aanwijzer naar een SID structuur.
CSid::GetPSID_IDENTIFIER_AUTHORITY Retourneert een aanwijzer naar de SID_IDENTIFIER_AUTHORITY structuur.
CSid::GetSubAuthority Retourneert een opgegeven subauthoriteit in een SID structuur.
CSid::GetSubAuthorityCount Retourneert het aantal subauthoriteit.
CSid::IsValid Test het CSid object op geldigheid.
CSid::LoadAccount Hiermee werkt u het CSid object bij op basis van de accountnaam en het domein of een bestaande SID structuur.
CSid::Sid Retourneert de id-tekenreeks.
CSid::SidNameUse Retourneert een beschrijving van de status van het CSid object.

Bedieners

Naam Description
CSid::operator = Toewijzingsoperator.
CSid::operator const SID * Cast een CSid object naar een aanwijzer naar een SID structuur.

Globale operators

Naam Description
operator == Test twee beveiligingsdescriptorobjecten voor gelijkheid
operator != Test twee beveiligingsdescriptorobjecten op ongelijkheid
operator < Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.
operator > Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.
operator <= Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.
operator >= Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.

Opmerkingen

De SID structuur is een structuur met een variabele lengte die wordt gebruikt om gebruikers of groepen uniek te identificeren.

Toepassingen mogen de SID structuur niet rechtstreeks wijzigen, maar gebruiken in plaats daarvan de methoden die zijn opgegeven in deze wrapperklasse. Zie ook AtlGetOwnerSid, AtlSetGroupSid, en AtlGetGroupSidAtlSetOwnerSid.

Zie Access Control in de Windows SDK voor een inleiding tot het toegangsbeheermodel in Windows.

Requirements

Koptekst: atlsecurity.h

CSid::AccountName

Retourneert de naam van het account dat is gekoppeld aan het CSid object.

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

Retourwaarde

Retourneert de LPCTSTR verwijzing naar de naam van het account.

Opmerkingen

Met deze methode wordt geprobeerd een naam te vinden voor de opgegeven SID (beveiligings-id). Zie voor meer informatie LookupAccountSid.

Als er geen accountnaam voor de SID account kan worden gevonden, AccountName wordt een lege tekenreeks geretourneerd. Dit resultaat kan optreden als een netwerktime-out voorkomt dat deze methode de naam kan vinden. Dit gebeurt ook voor beveiligings-id's zonder bijbehorende accountnaam, zoals een SID accountnaam die een aanmeldingssessie identificeert.

CSid::CSid

De constructor.

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(...);

Parameterwaarden

rhs
Een bestaande CSid object- of SID beveiligings-id-structuur.

IdentifierAuthority
De autoriteit.

nSubAuthorityCount
Het aantal subauthoriteit.

pszAccountName
De accountnaam.

pszSystem
De systeemnaam. Deze tekenreeks kan de naam van een externe computer zijn. Als deze tekenreeks NULL is, wordt het lokale systeem gebruikt.

pSid
Een aanwijzer naar een SID structuur.

Opmerkingen

De constructor initialiseert het CSid object, stelt een intern gegevenslid SidTypeInvalidin op , of door de instellingen van een bestaand CSid, SIDof bestaand account te kopiƫren.

Als de initialisatie mislukt, genereert de constructor een CAtlException klasse.

CSid::~CSid

De destructor.

virtual ~CSid() throw();

Opmerkingen

Met de destructor worden alle resources die door het object zijn verkregen, vrijgemaakt.

CSid::CSidArray

Een matrix met CSid objecten.

typedef CAtlArray<CSid> CSidArray;

Opmerkingen

Met dit typedef geeft u het matrixtype op dat kan worden gebruikt om beveiligings-id's op te halen uit een ACL (toegangsbeheerlijst). Zie CAcl::GetAclEntries.

CSid::Domain

Retourneert de naam van het domein dat is gekoppeld aan het CSid object.

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

Retourwaarde

Retourneert de LPCTSTR verwijzing naar het domein.

Opmerkingen

Met deze methode wordt geprobeerd een naam te vinden voor de opgegeven SID (beveiligings-id). Zie voor meer informatie LookupAccountSid.

Als er geen accountnaam voor de SID naam kan worden gevonden, Domain wordt het domein geretourneerd als een lege tekenreeks. Dit resultaat kan optreden als een netwerktime-out voorkomt dat deze methode de naam kan vinden. Dit gebeurt ook voor beveiligings-id's zonder bijbehorende accountnaam, zoals een SID accountnaam die een aanmeldingssessie identificeert.

CSid::EqualPrefix

Test SID (beveiligings-id)-voorvoegsels voor gelijkheid.

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

Parameterwaarden

rhs
De SID structuur (beveiligings-id) of CSid het object dat moet worden vergeleken.

Retourwaarde

TRUE Geeft als resultaat het succes, FALSE bij fouten.

Opmerkingen

Zie EqualPrefixSid voor meer informatie.

CSid::GetLength

Retourneert de lengte van het CSid object.

UINT GetLength() const throw();

Retourwaarde

Retourneert de lengte in bytes van het CSid object.

Opmerkingen

Als de CSid structuur niet geldig is, is de retourwaarde niet gedefinieerd. Voordat u aanroept GetLength, gebruikt u de CSid::IsValid lidfunctie om te controleren of dit CSid geldig is.

Opmerking

Onder foutopsporing wordt een ASSERT veroorzaakt door de functie als het CSid object niet geldig is.

CSid::GetPSID

Hiermee wordt een aanwijzer geretourneerd naar een SID structuur (beveiligings-id).

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

Retourwaarde

Retourneert het adres van de onderliggende SID structuur van het CSid object.

CSid::GetPSID_IDENTIFIER_AUTHORITY

Retourneert een aanwijzer naar de SID_IDENTIFIER_AUTHORITY structuur.

const SID_IDENTIFIER_AUTHORITY* GetPSID_IDENTIFIER_AUTHORITY() const throw();

Retourwaarde

Als de methode slaagt, wordt het adres van de SID_IDENTIFIER_AUTHORITY structuur geretourneerd. Als dit mislukt, is de retourwaarde niet gedefinieerd. Er kan een fout optreden als het CSid object niet geldig is, in welk geval de CSid::IsValid methode retourneert FALSE. De functie GetLastError kan worden aangeroepen voor uitgebreide foutinformatie.

Opmerking

Onder foutopsporing wordt een ASSERT veroorzaakt door de functie als het CSid object niet geldig is.

CSid::GetSubAuthority

Retourneert een opgegeven subauthoriteit in een SID structuur (beveiligings-id).

DWORD GetSubAuthority(DWORD nSubAuthority) const throw();

Parameterwaarden

nSubAuthority
De subauthoriteit.

Retourwaarde

Retourneert de subauthoriteit waarnaar wordt verwezen door nSubAuthority. De waarde van de subauthoriteit is een relatieve id (RID).

Opmerkingen

Met nSubAuthority de parameter wordt een indexwaarde opgegeven die het matrixelement van de subauthoriteit aangeeft dat de methode retourneert. De methode voert geen validatietests uit op deze waarde. Een toepassing kan aanroepen CSid::GetSubAuthorityCount om het bereik van acceptabele waarden te detecteren.

Opmerking

Onder foutopsporing wordt een ASSERT veroorzaakt door de functie als het CSid object niet geldig is.

CSid::GetSubAuthorityCount

Retourneert het aantal subauthoriteit.

UCHAR GetSubAuthorityCount() const throw();

Retourwaarde

Als de methode slaagt, is de retourwaarde het aantal subauthoriteit.

Als de methode mislukt, is de retourwaarde niet gedefinieerd. De methode mislukt als het CSid object ongeldig is. Als u uitgebreide foutinformatie wilt ophalen, roept u het aan GetLastError.

Opmerking

Onder foutopsporing wordt een ASSERT veroorzaakt door de functie als het CSid object niet geldig is.

CSid::IsValid

Test het CSid object op geldigheid.

bool IsValid() const throw();

Retourwaarde

Retourneert TRUE als het CSid object geldig is, FALSE zo niet. Er is geen uitgebreide foutinformatie voor deze methode; bel niet GetLastError.

Opmerkingen

De IsValid methode valideert het CSid object door te controleren of het revisienummer zich binnen een bekend bereik bevindt en dat het aantal subauthoriteiten kleiner is dan het maximum.

CSid::LoadAccount

Hiermee werkt u het CSid object bij op basis van de accountnaam en het domein of een bestaande SID structuur (beveiligings-id).

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

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

Parameterwaarden

pszAccountName
De accountnaam.

pszSystem
De systeemnaam. Deze tekenreeks kan de naam van een externe computer zijn. Als deze tekenreeks NULL is, wordt het lokale systeem gebruikt.

pSid
Een aanwijzer naar een SID structuur.

Retourwaarde

TRUE Geeft als resultaat het succes, FALSE bij fouten. Als u uitgebreide foutinformatie wilt ophalen, roept u het aan GetLastError.

Opmerkingen

LoadAccount probeert een beveiligings-id voor de opgegeven naam te vinden. Zie LookupAccountSid voor meer informatie.

CSid::operator =

Toewijzingsoperator.

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

Parameterwaarden

rhs
De SID (beveiligings-id) of CSid om toe te wijzen aan het CSid object.

Retourwaarde

Retourneert een verwijzing naar het bijgewerkte CSid object.

operator ==

Test twee beveiligingsdescriptorobjecten voor gelijkheid.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de == operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de == operator wordt weergegeven.

Retourwaarde

TRUE als de beveiligingsdescriptors gelijk zijn, anders FALSE.

operator !=

Test twee beveiligingsdescriptorobjecten op ongelijkheid.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de != operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de != operator wordt weergegeven.

Retourwaarde

TRUE als de beveiligingsdescriptors niet gelijk zijn, anders FALSE.

operator <

Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de < operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de < operator wordt weergegeven.

Retourwaarde

TRUE indien lhs kleiner dan rhs, anders FALSE.

operator <=

Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de <= operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de <= operator wordt weergegeven.

Retourwaarde

TRUE indien lhs kleiner dan of gelijk aan rhs, anders FALSE.

operator >

Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de > operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de > operator wordt weergegeven.

Retourwaarde

TRUE als lhs deze groter is dan rhs, anders FALSE.

operator >=

Vergelijkt de relatieve waarde van twee beveiligingsdescriptorobjecten.

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

Parameterwaarden

lhs
De SID (beveiligings-id) of CSid die aan de linkerkant van de >= operator wordt weergegeven.

rhs
De SID (beveiligings-id) of CSid die aan de rechterkant van de >= operator wordt weergegeven.

Retourwaarde

TRUE als lhs deze groter is dan of gelijk is aan rhs, anders FALSE.

CSid::operator const SID *

Hiermee wordt een CSid object naar een aanwijzer naar een SID structuur (beveiligings-id) gegoten.

operator const SID *() const;

Opmerkingen

Retourneert het adres van de SID structuur.

CSid::Sid

Retourneert de SID structuur (beveiligings-id) als een tekenreeks.

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

Retourwaarde

Retourneert de SID structuur als een tekenreeks in een indeling die geschikt is voor weergave, opslag of overdracht. Gelijk aan ConvertSidToStringSid.

CSid::SidNameUse

Retourneert een beschrijving van de status van het CSid object.

SID_NAME_USE SidNameUse() const throw();

Retourwaarde

Retourneert de waarde van het gegevenslid waarin een waarde wordt opgeslagen die de status van het CSid object beschrijft.

Waarde Description
SidTypeUser Hiermee wordt een gebruiker SID (beveiligings-id) aangegeven.
SidTypeGroup Geeft een groep SIDaan.
SidTypeDomain Geeft een domein SIDaan.
SidTypeAlias Geeft een alias SIDaan.
SidTypeWellKnownGroup Geeft een SID aan voor een bekende groep.
SidTypeDeletedAccount Geeft een SID voor een verwijderd account aan.
SidTypeInvalid Geeft een ongeldige SIDwaarde aan.
SidTypeUnknown Geeft een onbekend SID type aan.
SidTypeComputer Geeft een SID voor een computer aan.

Opmerkingen

Aanroep CSid::LoadAccount om het CSid object bij te werken voordat u aanroept SidNameUse om de status ervan te retourneren. SidNameUse wijzigt de status van het object niet (door aan te roepen of LookupAccountNameLookupAccountSid), maar retourneert alleen de huidige status.

Zie ook

Beveiligingsvoorbeeld
Overzicht van klassen
Globale beveiligingsfuncties
Bedieners