Mengatur keamanan pada pembuatan namespace
File Managed Object Format (MOF) yang membuat namespace layanan juga dapat menentukan deskriptor keamanan untuk namespace dengan menyertakan kualifikasi NamespaceSecuritySDDL dengan deskriptor keamanan dalam format bahasa definisi deskriptor keamanan (SDDL ).
Anda dapat menggunakan NamespaceSecuritySDDL untuk mengamankan namespace apa pun. Anda juga dapat menggunakan kualifikasi ini dalam file MOF sederhana untuk mengubah deskriptor keamanan pada namespace yang ada. String SDDL diproses oleh WMI untuk menetapkan keamanan namespace layanan tetapi tidak disimpan sebagai string. Jika tidak ada deskriptor keamanan yang ditentukan, keamanan default akan digunakan. Untuk informasi selengkapnya, lihat Mengatur Deskriptor Keamanan Namepace.
Prosedur berikut mengatur deskriptor keamanan untuk namespace root\MyNamespace . String SDDL mengatur pemilik dan grup ke pengguna yang diautentikasi dan menentukan daftar kontrol akses diskresi (DACL) yang diwarisi oleh namespace anak. DACL memungkinkan pengguna hak untuk membaca data, menjalankan metode, menulis data ke kelas penyedia dan menggunakan akses jarak jauh: WBEM_ENABLE, WBEM_METHOD_EXECUTE, WBEM_WRITE_PROVIDER, WBEM_REMOTE_ACCESS. Untuk informasi selengkapnya, lihat Akses ke Namespace Layanan WMI.
Untuk mengatur NAMESPACE DACL
Buat file Managed Object Format (MOF) atau ubah file MOF Anda yang ada yang menentukan namespace untuk menambahkan kualifikasi NamespaceSecuritySDDL dengan string SDDL.
Contoh kode berikut menunjukkan namespace yang akan dimodifikasi adalah root\MyNamespace dan file diberi nama MyNamespace_security.mof.
#pragma autorecover #pragma namespace("\\\\.\\root") [NamespaceSecuritySDDL ("O:BAG:BAD:(A;CI;0x60003;;;WD)")] Instance of __Namespace { Name = "MyNamespace"; };
Ketahuilah bahwa string SDDL peka huruf besar/kecil: huruf harus dikapitalisasi.
Contoh kode berikut menunjukkan huruf "o" dan "g" dalam string SDDL sebagai huruf kecil dan akan menyebabkan Mofcomp.exe mengembalikan kesalahan.
#pragma autorecover #pragma namespace("\\\\.\\root") [NamespaceSecuritySDDL("o:BAg:BAD:(A;CI;0x60003;;;WD)")] Instance of __Namespace { Name = "MyNamespace"; };
Jalankan Mofcomp.exe untuk mengkompilasi file MOF.
c:\mofcomp MyNamespace_security.mof
Di C++, gunakan metode IMoFCompiler .
Jika upaya Anda untuk mengatur namespace LAYANAN DACL gagal, pertimbangkan pesan kesalahan berikut:
Kesalahan Deskripsi WBEM_E_INVALID_PARAMETER Tidak ada DACL yang diwariskan. Secara bergantian, pemanggil telah melanggar DACL atau SD di namespace induk. WBEM_E_ACCESS_DENIED Pemanggil tidak memiliki izin untuk memperbarui SDDL di MOF.
Topik terkait