Fungsi SeSetSecurityDescriptorInfo (ntifs.h)
SeSetSecurityDescriptorInfo rutin mengatur deskriptor keamanan objek.
Sintaks
NTSTATUS SeSetSecurityDescriptorInfo(
[in, optional] PVOID Object,
[in] PSECURITY_INFORMATION SecurityInformation,
PSECURITY_DESCRIPTOR ModificationDescriptor,
[in, out] PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor,
[in] POOL_TYPE PoolType,
[in] PGENERIC_MAPPING GenericMapping
);
Parameter
[in, optional] Object
Arahkan ke objek yang deskriptor keamanannya akan diatur. Ini digunakan untuk memperbarui informasi kuota keamanan.
[in] SecurityInformation
Penunjuk ke bitmask yang menentukan informasi keamanan mana yang akan diterapkan ke objek. Bisa berupa kombinasi dari satu atau beberapa nilai berikut.
Nilai | Makna |
---|---|
DACL_SECURITY_INFORMATION | Menunjukkan daftar kontrol akses diskresi (DACL) objek sedang diatur. Membutuhkan akses WRITE_DAC. |
GROUP_SECURITY_INFORMATION | Menunjukkan pengidentifikasi grup utama objek sedang diatur. Memerlukan akses WRITE_OWNER. |
OWNER_SECURITY_INFORMATION | Menunjukkan pengidentifikasi pemilik objek sedang diatur. Memerlukan akses WRITE_OWNER. |
SACL_SECURITY_INFORMATION | Menunjukkan sistem ACL (SACL) objek sedang diatur. Memerlukan akses ACCESS_SYSTEM_SECURITY. |
ModificationDescriptor
Deskriptor keamanan input yang akan diterapkan ke objek. Pemanggil rutinitas ini diharapkan untuk memeriksa dan menangkap deskriptor keamanan yang diteruskan sebelum memanggil SeSetSecurityDescriptorInfo, dan untuk merilisnya setelahnya.
[in, out] ObjectsSecurityDescriptor
Arahkan ke penunjuk ke deskriptor keamanan objek. Deskriptor keamanan harus dalam format relatif mandiri. Pemanggil bertanggung jawab untuk membebaskan struktur ini ketika tidak lagi diperlukan.
[in] PoolType
Menentukan jenis kumpulan yang akan digunakan saat mengalokasikan deskriptor keamanan baru, yang bisa menjadi salah satu dari berikut ini:
- NonPagedPool
- PagedPool
- NonPagedPoolCacheAligned
- PagedPoolCacheAligned
Biasanya, pemanggil menentukan PagedPool, atau NonPagedPool jika buffer akan diakses di IRQL >= DISPATCH_LEVEL atau dalam konteks utas arbitrer.
Jenis kumpulan NonPagedPoolMustSucceed dan NonPagedPoolCacheAlignedMustS sudah usang dan tidak boleh lagi digunakan.
[in] GenericMapping
Arahkan ke struktur GENERIC_MAPPING yang menentukan pemetaan generik ke jenis akses tertentu dan standar untuk objek yang diakses. Struktur pemetaan ini diharapkan aman untuk diakses (yaitu, ditangkap jika perlu) sebelum diteruskan ke rutinitas ini.
Nilai kembali
Menampilkan kode | Deskripsi |
---|---|
STATUS_SUCCESS | Deskriptor keamanan objek berhasil dimodifikasi. |
STATUS_BAD_DESCRIPTOR_FORMAT | Deskriptor keamanan objek yang disediakan tidak dalam format relatif mandiri. |
STATUS_NO_SECURITY_ON_OBJECT | Objek tidak memiliki pendeskripsi keamanan. |
Keterangan
SeSetSecurityDescriptorInfo memodifikasi deskriptor keamanan objek yang ada. Jika objek tidak memiliki deskriptor keamanan, panggilan ke SeSetSecurityDescriptorInfo akan gagal.
Untuk menentukan apakah objek mendukung pewarisan otomatis entri kontrol akses (ACE), gunakan SeSetSecurityDescriptorInfoEx.
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 penunjuk ke anggota.
Untuk informasi selengkapnya tentang keamanan dan kontrol akses, lihat Model keamanan Windows untuk pengembang driver dan dokumentasi tentang topik ini di Windows SDK.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | ntifs.h (termasuk Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Lihat juga
RtlCreateSecurityDescriptorRelative
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk