Urutan ACE dalam DACL
Ketika proses mencoba mengakses objek yang dapat diamankan, sistem menelusuri entri kontrol akses (ACE) dalam daftar kontrol akses diskresi objek (DACL) hingga menemukan ACE yang mengizinkan atau menolak akses yang diminta. Hak akses yang dacl izinkan pengguna dapat bervariasi tergantung pada urutan ACE di DACL. Akibatnya, sistem operasi Windows XP mendefinisikan urutan yang disukai untuk ACE di DACL objek yang dapat diamankan. Urutan yang disukai menyediakan kerangka kerja sederhana yang memastikan bahwa ACE yang ditolak akses benar-benar menolak akses. Untuk informasi selengkapnya tentang algoritma sistem untuk memeriksa akses, lihat Cara DACL Mengontrol Akses ke Objek.
Untuk Windows Server 2003 dan Windows XP, urutan ACE yang tepat dipersulit oleh pengenalan ACE khusus objek dan pewarisan otomatis.
Langkah-langkah berikut menjelaskan urutan yang disukai:
- Semua ACE eksplisit ditempatkan dalam grup sebelum ASE yang diwariskan.
- Dalam grup ACE eksplisit, ASE yang ditolak akses ditempatkan sebelum ACE yang diizinkan akses.
- ACE yang diwariskan ditempatkan dalam urutan diwariskan. ACE yang diwarisi dari induk objek anak adalah yang pertama, kemudian ACE yang diwarisi dari kakek-nenek, dan sebagainya di atas pohon objek.
- Untuk setiap tingkat ACE yang diwariskan, ACE yang ditolak akses ditempatkan sebelum ACE yang diizinkan akses.
Tentu saja, tidak semua jenis ACE diperlukan dalam ACL.
Fungsi seperti AddAccessAllowedAceEx dan AddAccessAllowedObjectAce menambahkan ACE ke akhir ACL. Ini adalah tanggung jawab pemanggil untuk memastikan bahwa ACE ditambahkan dalam urutan yang tepat.