Bagikan melalui


Fungsi AddMandatoryAce (securitybaseapi.h)

Fungsi AddMandatoryAce menambahkan entri kontrol akses (ACE) SYSTEM_MANDATORY_LABEL_ACE ke daftar kontrol akses sistem (SACL) yang ditentukan.

Sintaks

BOOL AddMandatoryAce(
  [in, out] PACL  pAcl,
  [in]      DWORD dwAceRevision,
  [in]      DWORD AceFlags,
  [in]      DWORD MandatoryPolicy,
  [in]      PSID  pLabelSid
);

Parameter

[in, out] pAcl

Penunjuk ke SACL. Fungsi ini menambahkan ACE wajib ke akhir SACL ini. ACE dalam bentuk struktur SYSTEM_MANDATORY_LABEL_ACE .

[in] dwAceRevision

Tingkat revisi SACL sedang dimodifikasi. Nilai ini bisa menjadi salah satu nilai berikut.

Nilai Makna
ACL_REVISION
SACL tidak berisi ACE khusus objek.
ACL_REVISION_DS
SACL berisi ACE yang ditentukan objek.

[in] AceFlags

Sekumpulan bendera bit yang mengontrol pewarisan ACE. Fungsi ini menetapkan bendera ini di anggota AceFlags dari struktur ACE_HEADER ACE baru.

Parameter ini bisa menjadi kombinasi dari nilai berikut.

Nilai Makna
OBJECT_INHERIT_ACE
0x1
ACE diwarisi oleh objek nonkontainer.
CONTAINER_INHERIT_ACE
0x2
ACE diwarisi oleh objek kontainer.
NO_PROPAGATE_INHERIT_ACE
0x4
Bit OBJECT_INHERIT_ACE dan CONTAINER_INHERIT_ACE tidak disebarkan ke ACE yang diwariskan.
INHERIT_ONLY_ACE
0x8
ACE tidak berlaku untuk objek tempat SACL ditetapkan, tetapi ACE dapat diwarisi oleh objek anak.
INHERITED_ACE
0x10
ACE diwariskan. Operasi yang mengubah keamanan pada pohon objek dapat memodifikasi ACE yang diwariskan tanpa mengubah ACE yang langsung diterapkan ke objek.

[in] MandatoryPolicy

Kebijakan akses untuk prinsipal dengan tingkat integritas wajib lebih rendah dari objek yang terkait dengan SACL yang berisi ACE ini.

Nilai Makna
SYSTEM_MANDATORY_LABEL_NO_WRITE_UP
0x1
Prinsipal dengan tingkat wajib yang lebih rendah daripada objek tidak dapat menulis ke objek.
SYSTEM_MANDATORY_LABEL_NO_READ_UP
0x2
Prinsipal dengan tingkat wajib yang lebih rendah daripada objek tidak dapat membaca objek.
SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP
0x4
Prinsipal dengan tingkat wajib yang lebih rendah daripada objek tidak dapat menjalankan objek.

[in] pLabelSid

Penunjuk ke SID yang menentukan tingkat integritas wajib objek yang terkait dengan SACL yang ditambahkan.

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan TRUE.

Jika fungsi gagal, fungsi akan mengembalikan FALSE. Untuk informasi kesalahan yang diperluas, hubungi GetLastError. Berikut ini adalah kemungkinan nilai kesalahan.

Mengembalikan kode/nilai Deskripsi
ERROR_ALLOTTED_SPACE_EXCEEDED
0x540
ACE baru tidak masuk ke dalam buffer pAcl .

Keterangan

Untuk mengkompilasi aplikasi yang menggunakan fungsi ini, tentukan _WIN32_WINNT sebagai 0x0600 atau yang lebih baru. Untuk informasi selengkapnya, lihat Menggunakan Header Windows.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header securitybaseapi.h (termasuk WinBase.h)
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

SYSTEM_MANDATORY_LABEL_ACE