Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
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 DACL-structuur (discretionaire toegangsbeheerlijst).
Belangrijk
Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in Windows Runtime.
Syntaxis
class CDacl : public CAcl
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CDacl::CDacl | De constructor. |
| CDacl::~CDacl | De destructor. |
Openbare methoden
| Naam | Description |
|---|---|
| CDacl::AddAllowedAce | Hiermee voegt u een toegestane ACE (toegangsbeheervermelding) toe aan het CDacl object. |
| CDacl::AddDeniedAce | Voegt een geweigerde ACE toe aan het CDacl object. |
| CDacl::GetAceCount | Retourneert het aantal ACL's (toegangsbeheervermeldingen) in het CDacl object. |
| CDacl::RemoveAce | Hiermee verwijdert u een specifieke ACE (toegangsbeheervermelding) uit het CDacl object. |
| CDacl::RemoveAllAces | Hiermee verwijdert u alle ACL's in het CDacl object. |
Openbare operators
| Naam | Description |
|---|---|
| CDacl::operator = | Toewijzingsoperator. |
Opmerkingen
De beveiligingsdescriptor van een object kan een DACL bevatten. Een DACL bevat nul of meer ACL's (toegangsbeheervermeldingen) die de gebruikers en groepen identificeren die toegang hebben tot het object. Als een DACL leeg is (dat wil gezegd, het bevat nul ACL's), wordt er geen toegang expliciet verleend, zodat de toegang impliciet wordt geweigerd. Als de beveiligingsdescriptor van een object echter geen DACL heeft, is het object niet beveiligd en heeft iedereen volledige toegang.
Als u de DACL van een object wilt ophalen, moet u de eigenaar van het object zijn of READ_CONTROL toegang tot het object hebben. Als u de DACL van een object wilt wijzigen, moet u WRITE_DAC toegang hebben tot het object.
Gebruik de klassenmethoden om ACL's te maken, toe te voegen, te verwijderen en te verwijderen uit het CDacl object. Zie ook AtlGetDacl en AtlSetDacl.
Zie Access Control in de Windows SDK voor een inleiding tot het toegangsbeheermodel in Windows.
Overnamehiƫrarchie
CDacl
Requirements
Koptekst: atlsecurity.h
CDacl::AddAllowedAce
Hiermee voegt u een toegestane ACE (toegangsbeheervermelding) toe aan het CDacl object.
bool AddAllowedAce(
const CSid& rSid,
ACCESS_MASK AccessMask,
BYTE AceFlags = 0) throw(...);
bool AddAllowedAce(
const CSid& rSid,
ACCESS_MASK AccessMask,
BYTE AceFlags,
const GUID* pObjectType,
const GUID* pInheritedObjectType) throw(...);
Parameterwaarden
rSid
Een CSid-object .
AccessMask
Hiermee geeft u het masker van toegangsrechten moet worden toegestaan voor het opgegeven CSid object.
AceFlags
Een set bitvlagken waarmee ACE-overname wordt bepaald.
pObjectType
Het objecttype.
pInheritedObjectType
Het overgenomen objecttype.
Retourwaarde
Retourneert TRUE als de ACE wordt toegevoegd aan het CDacl object, ONWAAR bij fout.
Opmerkingen
Een CDacl object bevat nul of meer ACL's (toegangsbeheervermeldingen) die de gebruikers en groepen identificeren die toegang hebben tot het object. Met deze methode wordt een ACE toegevoegd die toegang tot het CDacl object toestaat.
Zie ACE_HEADER voor een beschrijving van de verschillende vlaggen die in de AceFlags parameter kunnen worden ingesteld.
CDacl::AddDeniedAce
Voegt een geweigerde ACE (toegangsbeheervermelding) toe aan het CDacl object.
bool AddDeniedAce(
const CSid& rSid,
ACCESS_MASK AccessMask,
BYTE AceFlags = 0) throw(...);
bool AddDeniedAce(
const CSid& rSid,
ACCESS_MASK AccessMask,
BYTE AceFlags,
const GUID* pObjectType,
const GUID* pInheritedObjectType) throw(...);
Parameterwaarden
rSid
Een CSid-object.
AccessMask
Hiermee geeft u het masker van toegangsrechten moet worden geweigerd voor het opgegeven CSid object.
AceFlags
Een set bitvlagken waarmee ACE-overname wordt bepaald. De standaardwaarde is 0 in de eerste vorm van de methode.
pObjectType
Het objecttype.
pInheritedObjectType
Het overgenomen objecttype.
Retourwaarde
Retourneert TRUE als de ACE wordt toegevoegd aan het CDacl object, ONWAAR bij fout.
Opmerkingen
Een CDacl object bevat nul of meer ACL's (toegangsbeheervermeldingen) die de gebruikers en groepen identificeren die toegang hebben tot het object. Met deze methode wordt een ACE toegevoegd die de toegang tot het CDacl object weigert.
Zie ACE_HEADER voor een beschrijving van de verschillende vlaggen die in de AceFlags parameter kunnen worden ingesteld.
CDacl::CDacl
De constructor.
CDacl (const ACL& rhs) throw(...);
CDacl () throw();
Parameterwaarden
Rhs
Een bestaande ACL structuur (toegangsbeheerlijst).
Opmerkingen
Het CDacl object kan eventueel worden gemaakt met behulp van een bestaande ACL structuur. Het is belangrijk om te weten dat alleen een DACL (discretionaire toegangsbeheerlijst) en niet een SACL (systeemtoegangsbeheerlijst) als deze parameter moet worden doorgegeven. In builds voor foutopsporing zorgt het doorgeven van een SACL voor een ASSERT. In release-builds zorgt het doorgeven van een SACL ervoor dat de ACL's (toegangsbeheervermeldingen) in de ACL worden genegeerd en er treedt geen fout op.
CDacl::~CDacl
De destructor.
~CDacl () throw();
Opmerkingen
De destructor maakt alle resources die zijn verkregen door het object vrij, inclusief alle ACL's (toegangsbeheervermeldingen) met CDacl::RemoveAllAces.
CDacl::GetAceCount
Retourneert het aantal ACL's (toegangsbeheervermeldingen) in het CDacl object.
UINT GetAceCount() const throw();
Retourwaarde
Retourneert het aantal ACL's in het CDacl object.
CDacl::operator =
Toewijzingsoperator.
CDacl& operator= (const ACL& rhs) throw(...);
Parameterwaarden
Rhs
De ACL (toegangsbeheerlijst) die moet worden toegewezen aan het bestaande object.
Retourwaarde
Retourneert een verwijzing naar het bijgewerkte CDacl object.
Opmerkingen
U moet ervoor zorgen dat u alleen een DACL (discretionaire toegangsbeheerlijst) aan deze functie doorgeeft. Het doorgeven van een SACL (systeemtoegangsbeheerlijst) aan deze functie veroorzaakt een ASSERT in foutopsporingsversies, maar veroorzaakt geen fout in release-builds.
CDacl::RemoveAce
Hiermee verwijdert u een specifieke ACE (toegangsbeheervermelding) uit het CDacl object.
void RemoveAce(UINT nIndex) throw();
Parameterwaarden
nIndex
Indexeren naar de ACE-vermelding die u wilt verwijderen.
Opmerkingen
Deze methode is afgeleid van CAtlArray::RemoveAt.
CDacl::RemoveAllAces
Hiermee verwijdert u alle ACL's (toegangsbeheervermeldingen) in het CDacl object.
void RemoveAllAces() throw();
Opmerkingen
Hiermee verwijdert u elke ACE structuur (indien van toepassing) in het CDacl object (toegangsbeheer).
Zie ook
Beveiligingsvoorbeeld
CAcl-klasse
Acls
Azen
Overzicht van klassen
Globale beveiligingsfuncties