Fungsi BuildExplicitAccessWithNameA (aclapi.h)

Fungsi BuildExplicitAccessWithName menginisialisasi struktur EXPLICIT_ACCESS dengan data yang ditentukan oleh pemanggil. Wali amanat diidentifikasi dengan string nama.

Sintaks

void BuildExplicitAccessWithNameA(
  [in, out]      PEXPLICIT_ACCESS_A pExplicitAccess,
  [in, optional] LPSTR              pTrusteeName,
  [in]           DWORD              AccessPermissions,
  [in]           ACCESS_MODE        AccessMode,
  [in]           DWORD              Inheritance
);

Parameter

[in, out] pExplicitAccess

Penunjuk ke struktur EXPLICIT_ACCESS untuk diinisialisasi. Fungsi BuildExplicitAccessWithName tidak mengalokasikan memori apa pun. Parameter ini tidak boleh NULL.

[in, optional] pTrusteeName

Penunjuk ke string yang dihentikan null yang berisi nama wali untuk anggota ptstrName dari struktur TRUSTEE . Fungsi BuildExplicitAccessWithName mengatur anggota lain dari struktur TRUSTEE sebagai berikut.

Nilai Makna
pMultipleTrustee
NULL
MultipleTrusteeOperation
NO_MULTIPLE_TRUSTEE
TrusteeForm
TRUSTEE_IS_NAME
TrusteeType
TRUSTEE_IS_UNKNOWN

[in] AccessPermissions

Menentukan masker akses untuk anggota grfAccessPermissions dari struktur EXPLICIT_ACCESS . Masker adalah sekumpulan bendera bit yang menggunakan format ACCESS_MASK untuk menentukan hak akses yang diizinkan, ditolak, atau diaudit oleh ACE untuk wali amanat. Fungsi yang menggunakan struktur EXPLICIT_ACCESS tidak mengonversi, menginterpretasikan, atau memvalidasi bit dalam masker ini.

[in] AccessMode

Menentukan mode akses untuk anggota grfAccessMode dari struktur EXPLICIT_ACCESS . Mode akses menunjukkan apakah entri kontrol akses (ACE) mengizinkan, menolak, atau mengaudit hak yang ditentukan. Untuk daftar kontrol akses diskresi (DACL), parameter ini dapat menjadi salah satu nilai dari enumerasi ACCESS_MODE . Untuk daftar kontrol akses sistem (SACL), parameter ini dapat menjadi kombinasi dari nilai ACCESS_MODE .

[in] Inheritance

Menentukan jenis pewarisan untuk anggota grfInheritance dari struktur EXPLICIT_ACCESS . Nilai ini adalah sekumpulan bendera bit yang menentukan apakah kontainer atau objek lain dapat mewarisi ACE dari objek utama tempat ACL dilampirkan. Nilai anggota ini sesuai dengan bagian warisan (byte urutan rendah) dari anggota AceFlags dari struktur ACE_HEADER . Parameter ini dapat NO_INHERITANCE untuk menunjukkan bahwa ACE tidak dapat diwariskan, atau dapat menjadi kombinasi dari nilai berikut.

Nilai Makna
CONTAINER_INHERIT_ACE
Kontainer lain yang dimuat oleh objek utama mewarisi ACE.
INHERIT_ONLY_ACE
ACE tidak berlaku untuk objek utama tempat ACL dilampirkan, tetapi objek yang dimuat oleh objek utama mewarisi ACE.
NO_PROPAGATE_INHERIT_ACE
Bendera OBJECT_INHERIT_ACE dan CONTAINER_INHERIT_ACE tidak disebarkan ke ACE yang diwariskan.
OBJECT_INHERIT_ACE
Objek nonkontainer yang dimuat oleh objek utama mewarisi ACE.
SUB_CONTAINERS_AND_OBJECTS_INHERIT
Baik kontainer maupun objek nonkontainer yang dimuat oleh objek utama mewarisi ACE. Bendera ini sesuai dengan kombinasi bendera CONTAINER_INHERIT_ACE dan OBJECT_INHERIT_ACE.
SUB_CONTAINERS_ONLY_INHERIT
Kontainer lain yang dimuat oleh objek utama mewarisi ACE. Bendera ini sesuai dengan kombinasi bendera CONTAINER_INHERIT_ACE dan INHERIT_ONLY_ACE .
SUB_OBJECTS_ONLY_INHERIT
Objek nonkontainer yang dimuat oleh objek utama mewarisi ACE. Bendera ini sesuai dengan kombinasi bendera OBJECT_INHERIT_ACE dan INHERIT_ONLY_ACE .

Mengembalikan nilai

Tidak ada

Keterangan

Catatan

Header aclapi.h mendefinisikan BuildExplicitAccessWithName sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

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 aclapi.h
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

ACE

ACL

Gambaran Umum Access Control

Fungsi Access Control Dasar

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

SetEntriesInAcl

WALI