Bagikan melalui


Kelas CSacl

Kelas ini adalah pembungkus untuk struktur SACL (daftar kontrol akses sistem).

Penting

Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.

Sintaks

class CSacl : public CAcl

Anggota

Konstruktor Publik

Nama Deskripsi
CSacl::CSacl Konstruktor.
CSacl::~CSacl Destruktor.

Metode Publik

Nama Deskripsi
CSacl::AddAuditAce Menambahkan entri kontrol akses audit (ACE) ke CSacl objek.
CSacl::GetAceCount Mengembalikan jumlah entri kontrol akses (ASE) dalam CSacl objek.
CSacl::RemoveAce Menghapus ACE tertentu (entri kontrol akses) dari CSacl objek.
CSacl::RemoveAllAces Menghapus semua ACE yang terkandung dalam CSacl objek .

Operator Publik

Nama Deskripsi
CSacl::operator = Operator penugasan.

Keterangan

SACL berisi entri kontrol akses (ACE) yang menentukan jenis upaya akses yang menghasilkan rekaman audit di log peristiwa keamanan pengendali domain. Perhatikan bahwa SACL hanya menghasilkan entri log pada pengendali domain tempat upaya akses terjadi, bukan pada setiap pengontrol domain yang berisi replika objek.

Untuk mengatur atau mengambil SACL dalam deskriptor keamanan objek, hak istimewa SE_SECURITY_NAME harus diaktifkan dalam token akses utas yang diminta. Grup administrator memiliki hak istimewa ini diberikan secara default, dan dapat diberikan kepada pengguna atau grup lain. Memiliki hak istimewa yang diberikan tidak semua yang diperlukan: sebelum operasi yang ditentukan oleh hak istimewa dapat dilakukan, hak istimewa harus diaktifkan dalam token akses keamanan agar berlaku. Model ini memungkinkan hak istimewa diaktifkan hanya untuk operasi sistem tertentu, lalu dinonaktifkan ketika tidak lagi diperlukan. Lihat AtlGetSacl dan AtlSetSacl untuk contoh mengaktifkan SE_SECURITY_NAME.

Gunakan metode kelas yang disediakan untuk menambahkan, menghapus, membuat, dan menghapus ACE dari SACL objek. Lihat juga AtlGetSacl dan AtlSetSacl.

Untuk pengenalan model kontrol akses di Windows, lihat Kontrol Akses di Windows SDK.

Hierarki Warisan

CAcl

CSacl

Persyaratan

Header: atlsecurity.h

CSacl::AddAuditAce

Menambahkan entri kontrol akses audit (ACE) ke CSacl objek.

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

Parameter

rSid
Objek CSid .

AccessMask
Menentukan masker hak akses yang akan diaudit untuk objek yang ditentukan CSid .

bSuccess
Menentukan apakah upaya akses yang diizinkan akan diaudit. Atur bendera ini ke true untuk mengaktifkan audit; jika tidak, atur ke false.

bFailure
Menentukan apakah upaya akses yang ditolak akan diaudit. Atur bendera ini ke true untuk mengaktifkan audit; jika tidak, atur ke false.

AceFlags
Sekumpulan bendera bit yang mengontrol pewarisan ACE.

pObjectType
Jenis objek.

pInheritedObjectType
Jenis objek yang diwariskan.

Tampilkan Nilai

Mengembalikan TRUE jika ACE ditambahkan ke CSacl objek, FALSE pada kegagalan.

Keterangan

Objek CSacl berisi entri kontrol akses (ACL) yang menentukan jenis upaya akses yang menghasilkan rekaman audit di log peristiwa keamanan. Metode ini menambahkan ACE seperti itu ke CSacl objek .

Lihat ACE_HEADER untuk deskripsi berbagai bendera yang dapat diatur dalam parameter AceFlags .

CSacl::CSacl

Konstruktor.

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

Parameter

rhs
Struktur (daftar kontrol akses) yang ACL sudah ada.

Keterangan

Objek CSacl dapat dibuat secara opsional menggunakan struktur yang ada ACL . Pastikan bahwa parameter ini adalah daftar kontrol akses sistem (SACL) dan bukan daftar kontrol akses diskresi (DACL). Dalam build debug, jika DACL diberikan pernyataan akan terjadi. Dalam rilis, build entri apa pun dari DACL diabaikan.

CSacl::~CSacl

Destruktor.

~CSacl() throw();

Keterangan

Destruktor membebaskan sumber daya apa pun yang diperoleh oleh objek, termasuk semua entri kontrol akses (ASE).

CSacl::GetAceCount

Mengembalikan jumlah entri kontrol akses (ASE) dalam CSacl objek.

UINT GetAceCount() const throw();

Tampilkan Nilai

Mengembalikan jumlah ACE yang terkandung dalam CSacl objek.

CSacl::operator =

Operator penugasan.

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

Parameter

rhs
ACL (daftar kontrol akses) untuk ditetapkan ke objek yang ada.

Tampilkan Nilai

Mengembalikan referensi ke objek yang diperbarui CSacl . Pastikan bahwa ACL parameter sebenarnya adalah daftar kontrol akses sistem (SACL) dan bukan daftar kontrol akses diskresi (DACL). Dalam debug, build pernyataan akan terjadi, dan dalam rilis ACL , build parameter akan diabaikan.

CSacl::RemoveAce

Menghapus ACE tertentu (entri kontrol akses) dari CSacl objek.

void RemoveAce(UINT nIndex) throw();

Parameter

nIndex
Indeks ke entri ACE untuk dihapus.

Keterangan

Metode ini berasal dari CAtlArray::RemoveAt.

CSacl::RemoveAllAces

Menghapus semua entri kontrol akses (ACL) yang terkandung dalam CSacl objek.

void RemoveAllAces() throw();

Keterangan

Menghapus setiap ACE struktur (jika ada) dalam CSacl objek.

Lihat juga

Kelas CAcl
Acls
Aces
Gambaran Umum Kelas
Fungsi Global Keamanan