Bagikan melalui


Fungsi GetPrivateObjectSecurity (securitybaseapi.h)

Fungsi GetPrivateObjectSecurity mengambil informasi dari deskriptor keamanan objek privat.

Sintaks

BOOL GetPrivateObjectSecurity(
  [in]            PSECURITY_DESCRIPTOR ObjectDescriptor,
  [in]            SECURITY_INFORMATION SecurityInformation,
  [out, optional] PSECURITY_DESCRIPTOR ResultantDescriptor,
  [in]            DWORD                DescriptorLength,
  [out]           PDWORD               ReturnLength
);

Parameter

[in] ObjectDescriptor

Penunjuk ke struktur SECURITY_DESCRIPTOR . Ini adalah deskriptor keamanan yang akan dikueri.

[in] SecurityInformation

Sekumpulan bendera bit yang menunjukkan bagian deskriptor keamanan untuk diambil. Parameter ini bisa menjadi kombinasi dari bendera bit SECURITY_INFORMATION .

[out, optional] ResultantDescriptor

Penunjuk ke buffer yang menerima salinan informasi yang diminta dari deskriptor keamanan yang ditentukan. Struktur SECURITY_DESCRIPTOR dikembalikan dalam format relatif mandiri .

[in] DescriptorLength

Menentukan ukuran, dalam byte, dari buffer yang diacu oleh parameter ResultantDescriptor .

[out] ReturnLength

Penunjuk ke variabel yang diatur fungsi ke nol jika deskriptor berhasil disalin. Jika buffer terlalu kecil untuk deskriptor keamanan, variabel ini menerima jumlah byte yang diperlukan. Jika nilai variabel ini lebih besar dari nilai parameter DescriptorLength saat fungsi kembali, fungsi mengembalikan FALSE dan tidak ada deskriptor keamanan yang disalin ke buffer.

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.

Keterangan

Fungsi ini hanya ditujukan untuk digunakan oleh manajer sumber daya. Untuk menerapkan semantik kontrol akses standar untuk memperbarui deskriptor keamanan, manajer sumber daya harus memverifikasi bahwa kondisi berikut terpenuhi sebelum memanggil GetPrivateObjectSecurity:

  • Jika pemilik objek sedang diatur, proses panggilan harus memiliki izin WRITE_OWNER atau menjadi pemilik objek.
  • Jika daftar kontrol akses diskresi objek sedang diatur, proses panggilan harus memiliki izin WRITE_DAC atau menjadi pemilik objek.
  • Jika daftar kontrol akses sistem objek sedang diatur, hak istimewa SE_SECURITY_NAME harus diaktifkan untuk proses panggilan.
Jika kondisi sebelumnya tidak terpenuhi, panggilan ke fungsi ini tidak gagal, namun, kebijakan akses standar tidak diberlakukan.

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

Lihat juga

Fungsi Access Control Klien/Server

Gambaran Umum Access Control Klien/Server

CreatePrivateObjectSecurity

DestroyPrivateObjectSecurity

GetFileSecurity

GetKernelObjectSecurity

GetUserObjectSecurity

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

SetPrivateObjectSecurity