Bagikan melalui


Fungsi FltQuerySecurityObject (fltkernel.h)

FltQuerySecurityObject mengambil salinan deskriptor keamanan objek.

Sintaks

NTSTATUS FLTAPI FltQuerySecurityObject(
  [in]            PFLT_INSTANCE        Instance,
  [in]            PFILE_OBJECT         FileObject,
  [in]            SECURITY_INFORMATION SecurityInformation,
  [in, out]       PSECURITY_DESCRIPTOR SecurityDescriptor,
  [in]            ULONG                Length,
  [out, optional] PULONG               LengthNeeded
);

Parameter

[in] Instance

Penunjuk instans buram untuk pemanggil. Parameter ini diperlukan dan tidak boleh NULL.

[in] FileObject

Penunjuk objek file untuk objek yang deskriptor keamanannya sedang dikueri. Parameter ini diperlukan dan tidak boleh NULL.

[in] SecurityInformation

SECURITY_INFORMATION nilai. Parameter ini diperlukan dan harus salah satu dari yang berikut ini:

Nilai SecurityInformation Makna
OWNER_SECURITY_INFORMATION Pengidentifikasi pemilik objek sedang dikueri. Membutuhkan akses READ_CONTROL .
GROUP_SECURITY_INFORMATION Pengidentifikasi grup utama objek sedang dikueri. Membutuhkan akses READ_CONTROL .
DACL_SECURITY_INFORMATION Daftar kontrol akses diskresi (DACL) objek sedang dikueri. Membutuhkan akses READ_CONTROL .
SACL_SECURITY_INFORMATION Sistem ACL (SACL) objek sedang dikueri. Membutuhkan akses ACCESS_SYSTEM_SECURITY .

[in, out] SecurityDescriptor

Penunjuk ke buffer output yang disediakan penelepon yang menerima salinan pendeskripsi keamanan untuk objek yang ditentukan. Struktur SECURITY_DESCRIPTOR dikembalikan dalam format relatif mandiri. Parameter ini bersifat opsional dan dapat berupa NULL.

[in] Length

Ukuran, dalam byte, dari buffer SecurityDescriptor .

[out, optional] LengthNeeded

Penunjuk ke variabel yang dialokasikan penelepon yang menerima jumlah byte yang diperlukan untuk menyimpan deskriptor keamanan yang disalin yang dikembalikan dalam buffer yang ditunjukkan oleh parameter SecurityDescriptor . Parameter ini bersifat opsional dan dapat berupa NULL.

Nilai kembali

FltQuerySecurityObject mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti salah satu dari berikut ini:

Menampilkan kode Deskripsi
STATUS_ACCESS_DENIED
Penelepon tidak memiliki akses yang diperlukan. Ini adalah kode kesalahan.
STATUS_BUFFER_TOO_SMALL
Buffer terlalu kecil untuk memuat deskriptor keamanan. Tidak ada informasi keamanan yang disalin ke penyangga. Ini adalah kode kesalahan.

Keterangan

Deskriptor keamanan dapat dalam bentuk absolut atau relatif mandiri. Dalam bentuk relatif mandiri, semua anggota struktur terletak bersebelahan dalam memori. Dalam bentuk absolut, struktur hanya berisi pointer kepada anggotanya.

Sistem file NTFS memberlakukan batas 64 KB pada ukuran deskriptor keamanan yang ditulis ke disk untuk file. (Sistem file FAT tidak mendukung deskriptor keamanan untuk file.) Dengan demikian, buffer 64 KB yang ditunjukkan oleh parameter SecurityDescriptor dijamin cukup besar untuk menahan struktur SECURITY_DESCRIPTOR yang dikembalikan.

Objek yang ditunjuk parameter FileObject dapat mewakili aliran data bernama. Untuk informasi selengkapnya tentang aliran data bernama, lihat FILE_STREAM_INFORMATION.

Untuk informasi selengkapnya tentang keamanan dan kontrol akses, lihat dokumentasi Microsoft Windows SDK.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header fltkernel.h (termasuk Fltkernel.h)
Pustaka FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

Lihat juga

FILE_STREAM_INFORMATION

SECURITY_DESCRIPTOR

SECURITY_INFORMATION