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

ACE

ACL

GENERIC_MAPPING

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

SeQuerySecurityDescriptorInfo

SeSetAccessStateGenericMapping

SeSetSecurityDescriptorInfoEx