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
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í