Fungsi RegGetKeySecurity (winreg.h)

Fungsi RegGetKeySecurity mengambil salinan deskriptor keamanan yang melindungi kunci registri terbuka yang ditentukan.

Sintaks

LSTATUS RegGetKeySecurity(
  [in]            HKEY                 hKey,
  [in]            SECURITY_INFORMATION SecurityInformation,
  [out, optional] PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in, out]       LPDWORD              lpcbSecurityDescriptor
);

Parameter

[in] hKey

Handel ke kunci terbuka untuk mengambil deskriptor keamanan.

[in] SecurityInformation

Nilai SECURITY_INFORMATION yang menunjukkan informasi keamanan yang diminta.

[out, optional] pSecurityDescriptor

Penunjuk ke buffer yang menerima salinan deskriptor keamanan yang diminta.

[in, out] lpcbSecurityDescriptor

Penunjuk ke variabel yang menentukan ukuran, dalam byte, dari buffer yang diarahkan oleh parameter pSecurityDescriptor . Ketika fungsi kembali, variabel berisi jumlah byte yang ditulis ke buffer.

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan ERROR_SUCCESS.

Jika fungsi gagal, fungsi mengembalikan kode kesalahan bukan nol yang ditentukan dalam WinError.h. Anda dapat menggunakan fungsi FormatMessage dengan bendera FORMAT_MESSAGE_FROM_SYSTEM untuk mendapatkan deskripsi umum tentang kesalahan tersebut.

Keterangan

Jika buffer yang ditentukan oleh parameter pSecurityDescriptor terlalu kecil, fungsi mengembalikan ERROR_INSUFFICIENT_BUFFER dan parameter lpcbSecurityDescriptor berisi jumlah byte yang diperlukan untuk deskriptor keamanan yang diminta.

Untuk membaca pemilik, grup, atau daftar kontrol akses diskresi (DACL) dari deskriptor keamanan kunci, proses panggilan harus diberikan READ_CONTROL akses ketika handel dibuka. Untuk mendapatkan akses READ_CONTROL, pemanggil harus menjadi pemilik kunci atau DACL kunci harus memberikan akses.

Untuk membaca daftar kontrol akses sistem (SACL) dari deskriptor keamanan, proses panggilan harus diberikan ACCESS_SYSTEM_SECURITY akses saat kunci dibuka. Cara yang benar untuk mendapatkan akses ini adalah dengan mengaktifkan hak istimewa SE_SECURITY_NAME dalam token pemanggil saat ini, buka handel untuk akses ACCESS_SYSTEM_SECURITY, lalu nonaktifkan hak istimewa.

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header winreg.h (termasuk Windows.h)
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

FormatMessage

Access Control tingkat rendah

Fungsi Access Control tingkat rendah

RegDeleteKey

RegOpenKeyEx

RegSetKeySecurity

SECURITY_INFORMATION