Entri Kontrol Akses
Entri kontrol akses (ACE) menjelaskan hak akses yang terkait dengan pengidentifikasi keamanan (SID) tertentu. OS mengevaluasi ACE untuk menghitung akses efektif yang diberikan ke program tertentu berdasarkan kredensialnya. Misalnya, ketika pengguna masuk ke komputer dan kemudian menjalankan program, program menggunakan kredensial yang terkait dengan akun pengguna tertentu.
Ketika program mencoba membuka objek, Windows membandingkan kredensial yang terkait dengan program terhadap kontrol keamanan yang terkait dengan objek. Monitor referensi keamanan kemudian menggunakan informasi ACE untuk menentukan apakah program harus diizinkan atau ditolak akses ke objek yang diberikan. Ini adalah ACE yang menentukan perilaku subsistem keamanan.
Gambar berikut mengilustrasikan entri kontrol akses.
Subsistem keamanan menggunakan beberapa jenis ACES, termasuk jenis berikut. Jenis anggota struktur ACE mengontrol interpretasi ACE. Jenis yang ditentukan adalah:
ACCESS_ALLOWED_ACE_TYPE—jenis ini menunjukkan bahwa ACE menentukan hak akses yang diberikan ke SID tertentu.
ACCESS_DENIED_ACE_TYPE menunjukkan bahwa ACE menentukan hak akses yang akan ditolak ke SID tertentu.
SYSTEM_AUDIT_ACE_TYPE menunjukkan bahwa ACE menentukan perilaku audit.
SYSTEM_ALARM_ACE_TYPE menunjukkan bahwa ACE menentukan perilaku alarm.
ACCESS_ALLOWED_COMPOUND_ACE_TYPE menunjukkan bahwa ACE terkait dengan server tertentu dan entitas yang ditiru.
Jenis ACCESS_XXX digunakan untuk mengontrol akses terprogram ke objek. Jenis SYSTEM_XXX digunakan untuk mengontrol perilaku audit dan alarm subsistem keamanan saat objek diakses. Perilaku aktual subsistem keamanan dihitung dengan menggabungkan informasi untuk beberapa atau semua ACE yang terkait dengan objek.
Driver dapat membangun ACE ACCESS_ALLOWED_ACE_TYPE menggunakan rutinitas RtlAddAccessAllowedAce . Untuk menambahkan jenis entri ACE lainnya, penulis driver harus membangun fungsi mereka sendiri karena WDK tidak menyediakan rutinitas dukungan lainnya.