Bagikan melalui


Struktur ACL (winnt.h)

Struktur ACL adalah header daftar kontrol akses (ACL). ACL lengkap terdiri dari struktur ACL diikuti dengan daftar yang diurutkan dari nol atau lebih entri kontrol akses (ACE).

Sintaks

typedef struct _ACL {
  BYTE AclRevision;
  BYTE Sbz1;
  WORD AclSize;
  WORD AceCount;
  WORD Sbz2;
} ACL;

Anggota

AclRevision

Menentukan tingkat revisi ACL. Nilai ini harus ACL_REVISION, kecuali ACL berisi ACE khusus objek, dalam hal ini nilai harus ACL_REVISION_DS. Semua ACL dalam ACL harus berada pada tingkat revisi yang sama.

Sbz1

Menentukan byte nol padding yang menyelaraskan anggota AclRevision pada batas 16-bit.

AclSize

Menentukan ukuran, dalam byte, dari ACL. Nilai ini mencakup struktur ACL , semua ACE, dan potensi memori yang tidak digunakan.

AceCount

Menentukan jumlah ACE yang disimpan dalam ACL.

Sbz2

Menentukan dua byte nol dari padding yang menyelaraskan struktur ACL pada batas 32-bit.

Keterangan

ACL menyertakan daftar berurutan nol atau lebih ACE. ACE individu dalam ACL diberi nomor dari 0 hingga n, di mana n+1 adalah jumlah ACE dalam ACL. Saat mengedit ACL, aplikasi mengacu pada ACE dalam ACL oleh indeks ACE.

Ada dua jenis ACL: diskresi dan sistem.

Daftar kontrol akses diskresi (DACL) dikendalikan oleh pemilik objek atau siapa pun yang diberikan WRITE_DAC akses ke objek. Ini menentukan akses pengguna dan grup tertentu dapat memiliki objek. Misalnya, pemilik file dapat menggunakan DACL untuk mengontrol pengguna dan grup mana yang dapat dan tidak dapat memiliki akses ke file.

Objek juga dapat memiliki informasi keamanan tingkat sistem yang terkait dengannya, dalam bentuk daftar kontrol akses sistem (SACL) yang dikendalikan oleh administrator sistem. SACL memungkinkan administrator sistem untuk mengaudit upaya apa pun untuk mendapatkan akses ke objek.

Untuk daftar struktur ACE yang saat ini ditentukan, lihat ACE.

Struktur ACE keempat, SYSTEM_ALARM_ACE, saat ini tidak didukung.

Struktur ACL harus diperlakukan seolah-olah buram dan aplikasi tidak mencoba bekerja dengan anggotanya secara langsung. Untuk memastikan bahwa ACL benar secara semantik, aplikasi dapat menggunakan fungsi yang tercantum di bagian Lihat Juga untuk membuat dan memanipulasi ACL.

Setiap struktur ACL dan ACE dimulai pada batas DWORD .

Ukuran maksimum untuk ACL, termasuk ACE-nya, adalah 64 KB.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header winnt.h (sertakan Windows.h)

Lihat juga

AddAce

DeleteAce

GetAclInformation

GetSecurityDescriptorDacl

GetSecurityDescriptorSacl

InitializeAcl

IsValidAcl

SetAclInformation

SetSecurityDescriptorDacl

SetSecurityDescriptorSacl