Klasa CSacl
Ta klasa jest otoką struktury SACL (systemowej listy kontroli dostępu).
Ważne
Tej klasy i jej składowych nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows.
Składnia
class CSacl : public CAcl
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CSacl::CSacl | Konstruktor. |
CSacl::~CSacl | Destruktora. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CSacl::AddAuditAce | Dodaje do obiektu wpis kontroli dostępu inspekcji CSacl (ACE). |
CSacl::GetAceCount | Zwraca liczbę wpisów kontroli dostępu (ACL) w CSacl obiekcie. |
CSacl::RemoveAce | Usuwa z obiektu określony wpis CSacl kontroli dostępu (ACE). |
CSacl::RemoveAllAces | Usuwa wszystkie acE zawarte w CSacl obiekcie. |
Operatory publiczne
Nazwa/nazwisko | opis |
---|---|
CSacl::operator = | Operator przypisania. |
Uwagi
SACL zawiera wpisy kontroli dostępu (ACL), które określają typy prób dostępu, które generują rekordy inspekcji w dzienniku zdarzeń zabezpieczeń kontrolera domeny. Należy pamiętać, że SACL generuje wpisy dziennika tylko na kontrolerze domeny, na którym wystąpiła próba dostępu, a nie na każdym kontrolerze domeny, który zawiera replikę obiektu.
Aby ustawić lub pobrać SACL w deskryptorze zabezpieczeń obiektu, należy włączyć uprawnienia SE_SECURITY_NAME w tokenie dostępu żądanego wątku. Grupa administratorów ma domyślnie przyznane to uprawnienie i może zostać przyznane innym użytkownikom lub grupom. Posiadanie przyznanego uprawnienia nie jest wymagane: aby można było wykonać operację zdefiniowaną przez uprawnienia, należy włączyć uprawnienie w tokenie dostępu zabezpieczeń w celu zastosowania. Model umożliwia włączenie uprawnień tylko dla określonych operacji systemowych, a następnie wyłączone, gdy nie są już potrzebne. Zobacz AtlGetSacl i AtlSetSacl , aby zapoznać się z przykładami włączania SE_SECURITY_NAME.
Użyj podanych metod klasy, aby dodawać, usuwać, tworzyć i usuwać acEs z SACL
obiektu. Zobacz również atlGetSacl i AtlSetSacl.
Aby zapoznać się z wprowadzeniem do modelu kontroli dostępu w systemie Windows, zobacz Kontrola dostępu w zestawie Windows SDK.
Hierarchia dziedziczenia
CSacl
Wymagania
Nagłówek: atlsecurity.h
CSacl::AddAuditAce
Dodaje do obiektu wpis kontroli dostępu inspekcji CSacl
(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
Obiekt CSid .
Maska dostępu
Określa maskę praw dostępu do inspekcji dla określonego CSid
obiektu.
bSuccess
Określa, czy dozwolone próby dostępu mają być poddawane inspekcji. Ustaw tę flagę na true, aby włączyć inspekcję; w przeciwnym razie ustaw wartość false.
bFailure
Określa, czy próby odmowy dostępu mają zostać poddane inspekcji. Ustaw tę flagę na true, aby włączyć inspekcję; w przeciwnym razie ustaw wartość false.
AceFlags
Zestaw flag bitowych sterujących dziedziczeniem ACE.
pObjectType
Typ obiektu.
pInheritedObjectType
Dziedziczony typ obiektu.
Wartość zwracana
Zwraca wartość TRUE, jeśli ACE jest dodawany do CSacl
obiektu, wartość FALSE w przypadku niepowodzenia.
Uwagi
Obiekt CSacl
zawiera wpisy kontroli dostępu (ACL), które określają typy prób dostępu, które generują rekordy inspekcji w dzienniku zdarzeń zabezpieczeń. Ta metoda dodaje taką ACE do CSacl
obiektu .
Zobacz ACE_HEADER opis różnych flag, które można ustawić w parametrze AceFlags .
CSacl::CSacl
Konstruktor.
CSacl() throw();
CSacl(const ACL& rhs) throw(...);
Parametry
Rhs
Istniejąca ACL
struktura (lista kontroli dostępu).
Uwagi
Obiekt CSacl
można opcjonalnie utworzyć przy użyciu istniejącej ACL
struktury. Upewnij się, że ten parametr jest systemową listą kontroli dostępu (SACL), a nie uznaniową listą kontroli dostępu (DACL). W kompilacjach debugowania, jeśli zostanie podana lista DACL, wystąpi aseracja. W wersji kompiluje wszystkie wpisy z listy DACL są ignorowane.
CSacl::~CSacl
Destruktora.
~CSacl() throw();
Uwagi
Destruktor zwalnia wszystkie zasoby pozyskane przez obiekt, w tym wszystkie wpisy kontroli dostępu (ACE).
CSacl::GetAceCount
Zwraca liczbę wpisów kontroli dostępu (ACL) w CSacl
obiekcie.
UINT GetAceCount() const throw();
Wartość zwracana
Zwraca liczbę ACL zawartych w CSacl
obiekcie.
CSacl::operator =
Operator przypisania.
CSacl& operator=(const ACL& rhs) throw(...);
Parametry
Rhs
Lista ACL
(lista kontroli dostępu) do przypisania do istniejącego obiektu.
Wartość zwracana
Zwraca odwołanie do zaktualizowanego CSacl
obiektu. Upewnij się, że ACL
parametr jest w rzeczywistości systemową listą kontroli dostępu (SACL), a nie uznaniową listą kontroli dostępu (DACL). W debugowaniach zostanie wykonana asercji, a w kompilacjach ACL
wydania parametr zostanie zignorowany.
CSacl::RemoveAce
Usuwa z obiektu określony wpis CSacl
kontroli dostępu (ACE).
void RemoveAce(UINT nIndex) throw();
Parametry
nIndex
Zaindeksuj do wpisu ACE, aby usunąć.
Uwagi
Ta metoda pochodzi z CAtlArray::RemoveAt.
CSacl::RemoveAllAces
Usuwa wszystkie wpisy kontroli dostępu (ACL) zawarte w CSacl
obiekcie.
void RemoveAllAces() throw();
Uwagi
Usuwa każdą ACE
strukturę (jeśli istnieje) w CSacl
obiekcie.
Zobacz też
Klasa CAcl
Listy acl
Asy
Omówienie klasy
Funkcje globalne zabezpieczeń