Fungsi AddAccessDeniedAce (securitybaseapi.h)
Fungsi AddAccessDeniedAce menambahkan entri kontrol akses (ACE) yang ditolak akses ke daftar kontrol akses (ACL). Akses ditolak ke pengidentifikasi keamanan (SID) tertentu.
Untuk mengontrol apakah ACE baru dapat diwarisi oleh objek turunan, gunakan fungsi AddAccessDeniedAceEx .
Sintaks
BOOL AddAccessDeniedAce(
[in, out] PACL pAcl,
[in] DWORD dwAceRevision,
[in] DWORD AccessMask,
[in] PSID pSid
);
Parameter
[in, out] pAcl
Penunjuk ke ACL . Fungsi ini menambahkan ACE yang ditolak akses ke akhir ACL ini. ACE dalam bentuk struktur ACCESS_DENIED_ACE .
[in] dwAceRevision
Menentukan tingkat revisi ACL yang sedang dimodifikasi.
Nilai ini dapat ACL_REVISION atau ACL_REVISION_DS. Gunakan ACL_REVISION_DS jika ACL berisi ACE khusus objek.
[in] AccessMask
Menentukan masker hak akses yang ditolak ke SID yang ditentukan.
[in] pSid
Penunjuk ke struktur SID yang mewakili pengguna, grup, atau akun masuk yang ditolak aksesnya.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. Berikut ini adalah kemungkinan nilai kesalahan.
Menampilkan kode | Deskripsi |
---|---|
|
ACE baru tidak cocok dengan ACL. Diperlukan buffer ACL yang lebih besar. |
|
ACL yang ditentukan tidak terbentuk dengan benar. |
|
SID yang ditentukan tidak valid secara struktural. |
|
Revisi yang ditentukan tidak diketahui atau tidak kompatibel dengan ACL. |
|
ACE berhasil ditambahkan. |
Keterangan
Fungsi AddAccessAllowedAce dan AddAccessDeniedAce menambahkan ACE baru ke akhir daftar ACE untuk ACL. Fungsi-fungsi ini tidak secara otomatis menempatkan ACE baru dalam urutan kanonis yang tepat. Adalah tanggung jawab pemanggil untuk memastikan bahwa ACL berada dalam urutan kanonis dengan menambahkan ACE dalam urutan yang tepat.
Struktur ACE_HEADER ditempatkan di ACE oleh fungsi AddAccessDeniedAce menentukan jenis dan ukuran, tetapi tidak menyediakan bendera ACE.
ACE yang ditambahkan oleh AddAccessDeniedAce tidak dapat diwariskan.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | securitybaseapi.h (termasuk Windows.h) |
Pustaka | Advapi32.lib |
DLL | Advapi32.dll |