Mengubah Keamanan Akses pada Objek Yang Dapat Diamankan
Printer, layanan, kunci registri, aplikasi DCOM, dan namespace WMI adalah objek yang dapat diamankan. Akses ke objek yang dapat diamankan dilindungi oleh deskriptor keamanan, yang menentukan pengguna yang memiliki akses. Dimulai dengan Windows Vista, banyak objek yang dapat diamankan memiliki metode untuk mendapatkan atau mengatur deskriptor keamanan. Dengan izin yang sesuai, Anda dapat membaca atau mengubah deskriptor keamanan pada objek yang dapat diamankan. Dengan menggunakan metode ini, Anda dapat mengontrol akun atau grup pengguna mana yang memiliki akses ke printer, layanan, namespace layanan WMI, atau objek lainnya. Untuk informasi selengkapnya tentang deskriptor keamanan dan penggunaannya di WMI, lihat Akses ke Objek Yang Dapat Diamankan WMI.
Bagian berikut dibahas dalam topik ini:
- Metode Deskriptor Objek dan Keamanan
- Mengonversi Antara Format Deskriptor Keamanan
- Masalah Keamanan
- Topik terkait
Metode Deskriptor Objek dan Keamanan
Daftar berikut berisi metode yang harus dimiliki objek yang dapat diamankan untuk memungkinkan Anda membaca atau mengubah deskriptor keamanan:
Namespace WMI
Penyedia dapat menetapkan keamanan yang hanya memungkinkan grup tertentu memiliki akses ke data di namespace layanan WMI. Keamanan namespace dikontrol oleh metode pada kelas __SystemSecurity . Dimulai dengan Windows Vista, metode GetSecurityDescriptor dan SetSecurityDescriptor mengembalikan dan menulis objek __SecurityDescriptor . Untuk informasi selengkapnya, lihat Mengatur Deskriptor Keamanan Namespace.
Kunci registri
Dimulai dengan Windows Vista, Anda dapat mengamankan kunci registri sehingga tidak dapat diubah oleh pengguna yang tidak sah. Kelas StdRegProv memiliki metode GetSecurityDescriptor dan SetSecurityDescriptor . Metode ini mengembalikan dan menulis objek Win32_SecurityDescriptor .
Printer
Dimulai dengan Windows Vista, Anda dapat mengamankan akses ke instans kelas Win32_Printer menggunakan metode GetSecurityDescriptor dan SetSecurityDescriptor . Metode ini mengembalikan dan menulis objek Win32_SecurityDescriptor .
Layanan
Dimulai dengan Windows Vista, Anda dapat mengamankan akses ke instans kelas Win32_Service menggunakan metode GetSecurityDescriptor dan SetSecurityDescriptor . Metode ini mengembalikan dan menulis objek Win32_SecurityDescriptor .
Aplikasi DCOM
Instans aplikasi DCOM memiliki beberapa deskriptor keamanan. Dimulai dengan Windows Vista, gunakan metode kelas Win32_DCOMApplicationSetting untuk mendapatkan atau mengubah berbagai deskriptor keamanan. Deskriptor keamanan dikembalikan sebagai instans kelas Win32_SecurityDescriptor .
Untuk mendapatkan atau mengubah izin konfigurasi, panggil metode GetConfigurationSecurityDescriptor atau SetConfigurationSecurityDescriptor .
Untuk mendapatkan atau mengubah izin akses, panggil metode GetAccessSecurityDescriptor atau SetAccessSecurityDescriptor .
Untuk mendapatkan atau mengubah izin startup dan aktivasi, panggil metode GetLaunchSecurityDescriptor atau SetLaunchSecurityDescriptor ,
File
Metode GetSecurityDescriptor dan SetSecurityDescriptor berada di kelas Win32_LogicalFileSecuritySetting , bukan di kelas CIM_DataFile .
Berbagi
Metode GetSecurityDescriptor dan SetSecurityDescriptor berada di kelas Win32_LogicalShareSecuritySetting , bukan di kelas Win32_Share .
Catatan
Ketika Daftar Access Control Keamanan (SACL) baru tidak ditentukan dalam panggilan ke metode SetSecurityDescriptor, maka SACL pendeskripsi keamanan pada objek yang dapat diamankan target diatur ke NULL sehingga pengaturan SACL sebelumnya tidak bertahan.
Mengonversi Antara Format Deskriptor Keamanan
Deskriptor keamanan adalah array byte biner kompleks yang biasanya harus dibuat dan diubah di C++. Setelah Anda menggunakan salah satu metode Get untuk mendapatkan pendeskripsi keamanan, kelas Win32_SecurityDescriptorHelper menyediakan metode yang mengonversi deskriptor keamanan menjadi Security Descriptor Definition Language (SDDL) atau ke instans Win32_SecurityDescriptor .
Anda dapat memanipulasi daftar Access Control (ACL) dengan lebih mudah dalam instans Win32_SecurityDescriptor atau di SDDL. Untuk informasi selengkapnya tentang struktur dan penggunaan deskriptor keamanan di WMI, lihat Objek Deskriptor Keamanan WMI.
Dalam C++ atau C# gunakan fungsi konversi untuk mengonversi deskriptor keamanan biner ke Security Descriptor Definition Language (SDDL). Untuk mengubah nilai deskriptor keamanan dalam aplikasi C++, gunakan ConvertSecurityDescriptorToStringSecurityDescriptor dan ConvertStringSecurityDescriptorToSecurityDescriptor.
Masalah Keamanan
Disarankan agar perubahan pada deskriptor keamanan dilakukan dengan sangat hati-hati sehingga keamanan objek tidak disusupi. Ketahuilah bahwa urutan entri kontrol akses (ASE) dalam daftar kontrol akses diskresi (DACL) dapat memengaruhi keamanan akses. Untuk informasi selengkapnya, lihat Urutan ACE dalam DACL.
Topik terkait