Sdílet prostřednictvím


CSacl – třída

Tato třída je obálka pro strukturu SACL (seznam řízení přístupu systému).

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 CSacl : public CAcl

Členové

Veřejné konstruktory

Název Popis
CSacl::CSacl Konstruktor
CSacl::~CSacl Destruktor.

Veřejné metody

Název Popis
CSacl::AddAuditAce Přidá do objektu CSacl položku řízení přístupu auditu (ACE).
CSacl::GetAceCount Vrátí počet položek řízení přístupu (ACL) v objektu CSacl .
CSacl::RemoveAce Odebere konkrétní položku ACE (access-control) z objektu CSacl .
CSacl::RemoveAllAces Odebere všechny objekty ACL obsažené v objektu CSacl .

Veřejné operátory

Název Popis
CSacl::operator = Operátor přiřazení.

Poznámky

A SACL obsahuje položky řízení přístupu (ACL), které určují typy pokusů o přístup, které generují záznamy auditu v protokolu událostí zabezpečení řadiče domény. Všimněte si, že SACL generuje položky protokolu pouze na řadiči domény, kde došlo k pokusu o přístup, ne na každém řadiči domény, který obsahuje repliku objektu.

Chcete-li nastavit nebo načíst SACL v popisovači zabezpečení objektu, musí být oprávnění SE_SECURITY_NAME povolena v přístupovém tokenu žádajícího vlákna. Skupina administrators má ve výchozím nastavení tato oprávnění udělená a dá se udělit jiným uživatelům nebo skupinám. Udělení oprávnění není vše, co je potřeba: před provedením operace definované oprávněním musí být oprávnění povoleno v přístupovém tokenu zabezpečení, aby se projevilo. Model umožňuje povolit oprávnění jenom pro konkrétní systémové operace a pak je zakázat, pokud už nejsou potřeba. Příklady povolení SE_SECURITY_NAME najdete v tématu AtlGetSacl a AtlSetSacl .

Použijte metody třídy, které jsou k dispozici k přidání, odebrání, vytvoření a odstranění ACL z objektu SACL . Viz také AtlGetSacl a AtlSetSacl.

Úvod k modelu řízení přístupu ve Windows najdete v tématu Řízení přístupu v sadě Windows SDK.

Hierarchie dědičnosti

Seznam CACL

CSacl

Požadavky

Hlavička: atlsecurity.h

CSacl::AddAuditAce

Přidá do objektu CSacl položku řízení přístupu auditu (ACE).

bool AddAuditAce(
    const CSid& rSid,
    ACCESS_MASK AccessMask,
    bool bSuccess,
    bool bFailure,
    BYTE AceFlags = 0) throw(...);

bool AddAuditAce(
    const CSid& rSid,
    ACCESS_MASK AccessMask,
    bool bSuccess,
    bool bFailure,
    BYTE AceFlags,
    const GUID* pObjectType,
    const GUID* pInheritedObjectType) throw(...);

Parametry

rSid
Objekt CSid .

AccessMask
Určuje masku přístupových práv, která se mají auditovat pro zadaný CSid objekt.

BSuccess
Určuje, jestli se mají auditovat povolené pokusy o přístup. Chcete-li povolit auditování, nastavte tento příznak na true; v opačném případě ho nastavte na false.

bFailure
Určuje, jestli se mají auditovat pokusy o odepření přístupu. Chcete-li povolit auditování, nastavte tento příznak na true; v opačném případě ho nastavte na false.

AceFlags
Sada bitových příznaků, které řídí dědičnost ACE.

pObjectType
Typ objektu.

pInheritedObjectType
Typ zděděného objektu.

Návratová hodnota

Vrátí hodnotu TRUE, pokud je ACE přidána do objektu CSacl , FALSE při selhání.

Poznámky

Objekt CSacl obsahuje položky řízení přístupu (ACL), které určují typy pokusů o přístup, které generují záznamy auditu v protokolu událostí zabezpečení. Tato metoda přidá takové ACE do objektu CSacl .

Popis různých příznaků, které lze nastavit v parametru AceFlags, najdete v ACE_HEADER.

CSacl::CSacl

Konstruktor

CSacl() throw();
CSacl(const ACL& rhs) throw(...);

Parametry

rhs
Existující ACL struktura (seznam řízení přístupu)

Poznámky

Objekt CSacl lze volitelně vytvořit pomocí existující ACL struktury. Ujistěte se, že tento parametr je seznamem řízení přístupu (SACL) systému, nikoli volitelným seznamem řízení přístupu (DACL). Pokud je v buildech ladění zadaný seznam DACL, dojde k kontrolnímu výrazu. Ve vydané verzi se všechny položky z seznamu DACL ignorují.

CSacl::~CSacl

Destruktor.

~CSacl() throw();

Poznámky

Destruktor uvolní všechny prostředky získané objektem, včetně všech položek řízení přístupu (ACL).

CSacl::GetAceCount

Vrátí počet položek řízení přístupu (ACL) v objektu CSacl .

UINT GetAceCount() const throw();

Návratová hodnota

Vrátí počet ACL obsažených v objektu CSacl .

CSacl::operator =

Operátor přiřazení.

CSacl& operator=(const ACL& rhs) throw(...);

Parametry

rhs
( ACL seznam řízení přístupu) pro přiřazení k existujícímu objektu.

Návratová hodnota

Vrátí odkaz na aktualizovaný CSacl objekt. Ujistěte se, že ACL je parametr skutečně seznamem řízení přístupu (SACL) a nikoli volitelným seznamem řízení přístupu (DACL). V ladicím sestavení dojde k kontrolnímu výrazu a v buildech ACL vydané verze se parametr ignoruje.

CSacl::RemoveAce

Odebere konkrétní položku ACE (access-control) z objektu CSacl .

void RemoveAce(UINT nIndex) throw();

Parametry

nIndex
Index položky ACE, která se má odebrat.

Poznámky

Tato metoda je odvozena z CAtlArray::RemoveAt.

CSacl::RemoveAllAces

Odebere všechny položky řízení přístupu (ACL) obsažené v objektu CSacl .

void RemoveAllAces() throw();

Poznámky

Odebere každou ACE strukturu (pokud existuje) v objektu CSacl .

Viz také

CAcl – třída
Seznamy acl
Esa
Přehled třídy
Globální funkce zabezpečení