Memerlukan Koneksi Terenkripsi ke Namespace

Anda dapat mengharuskan skrip dan aplikasi klien membuat koneksi terenkripsi untuk autentikasi dengan menambahkan kualifikasi RequiresEncryption ke file .mof Managed Object Format (MOF) yang membuat namespace.

Koneksi terenkripsi ke namespace layanan WMI menentukan RPC_C_AUTHN_LEVEL_PKT_PRIVACY (atau PktPrivacy dalam skrip) untuk autentikasi. Kualifikasi RequiresEncryption menyebabkan WMI menolak permintaan data masuk kecuali secara eksplisit menggunakan autentikasi terenkripsi. Untuk informasi selengkapnya, lihat Mengatur Tingkat Keamanan Proses Default Menggunakan VBScript atau Autentikasi Pengaturan Menggunakan C++.

Anda juga dapat memodifikasi namespace yang ada dengan menambahkan atribut ini lalu mengkompilasi file MOF lagi. RequiresEncryption digunakan dalam MOF dengan instruksi pra-prosesor namespace pragma .

Prosedur berikut mengatur namespace layanan untuk memerlukan koneksi terenkripsi.

Untuk mengatur enkripsi yang diperlukan

  1. Buat file Managed Object Format (MOF) atau ubah file MOF Anda yang sudah ada yang menentukan namespace layanan.

    Contoh kode berikut menunjukkan namespace yang akan dimodifikasi adalah root\MyNamespace dan file diberi nama MyNamespace_security.mof. RequiresEncryption memiliki tipe data Boolean sehingga harus diatur ke True atau False.

    #pragma namespace("\\\\.\\Root\\MyNamespace") 
    
    [RequiresEncryption(TRUE)] 
    instance of __systemSecurity { };
    
  2. Jalankan mofcomp.exe untuk mengkompilasi file MOF.

    c:\mofcomp MyNamespace_security.mof

    Di C++, gunakan metode IMoFCompiler .

WMI menolak klien yang menggunakan tingkat autentikasi default karena DCOM menegosiasikan keamanan ke tingkat yang diperlukan oleh proses SVCHOST tempat layanan WMI berjalan. Untuk informasi selengkapnya tentang host layanan, lihat Hosting dan Keamanan Penyedia. Untuk informasi selengkapnya tentang mengatur tingkat autentikasi saat menyambungkan ke namespace layanan WMI, lihat Mengatur Tingkat Keamanan Proses Default Menggunakan C++, Mengatur Autentikasi Menggunakan C++, atau Mengatur Tingkat Keamanan Proses Default Menggunakan VBScript.

Saat mengembalikan data pada koneksi panggilan balik asinkron, WMI mengembalikan pesan akses yang ditolak ke komputer yang meminta. WMI juga membuat entri log di Log Peristiwa NT komputer dengan namespace terenkripsi yang menyatakan bahwa koneksi aman tidak dapat dibuat ke klien.

Dimulai dengan Windows Vista, file WbemCore.log tidak ada lagi. Anda dapat memeriksa Log Peristiwa NT untuk entri yang menunjukkan permintaan data masuk yang ditolak ke namespace yang memerlukan enkripsi.

Mengatur Deskriptor Keamanan Namepace

WbemAuthenticationLevelEnum

Mengamankan Koneksi WMI Jarak Jauh