Metode GetSecurityDescriptor dari kelas Win32_Service (Penyedia WMI CIMWin32)
Metode GetSecurityDescriptor mengembalikan deskriptor keamanan yang mengontrol akses ke layanan. Deskriptor dikembalikan sebagai instans Win32_SecurityDescriptor.
Sintaks
uint32 GetSecurityDescriptor(
[out] Win32_SecurityDescriptor Descriptor
);
Parameter
-
Deskriptor [keluar]
-
Deskriptor keamanan yang terkait dengan layanan.
Nilai hasil
Mengembalikan salah satu nilai yang tercantum dalam daftar berikut, atau nilai yang berbeda untuk menunjukkan kesalahan. Untuk kode kesalahan tambahan, lihat Konstanta Kesalahan WMI atau WbemErrorEnum. Untuk nilai HRESULT umum, lihat Kode Kesalahan Sistem.
-
Sukses
-
0
Permintaan diterima.
-
1
Permintaan tidak didukung.
-
Akses ditolak
-
2
Pengguna tidak memiliki akses yang diperlukan.
-
3
Layanan tidak dapat dihentikan karena layanan lain yang sedang berjalan bergantung padanya.
-
4
Kode kontrol yang diminta tidak valid, atau tidak dapat diterima oleh layanan.
-
5
Kode kontrol yang diminta tidak dapat dikirim ke layanan karena status layanan (Win32_BaseService.Properti status) sama dengan 0, 1, atau 2.
-
6
Layanan belum dimulai.
-
7
Layanan ini tidak menanggapi permintaan mulai secara tepat waktu.
-
Kegagalan tidak diketahui
-
8
Kegagalan yang tidak diketahui saat memulai layanan.
-
Hak istimewa hilang
-
9
Jalur direktori ke file yang dapat dieksekusi layanan tidak ditemukan.
-
10
Layanan sudah berjalan.
-
11
Database untuk menambahkan layanan baru dikunci.
-
12
Dependensi yang diandalkan layanan ini telah dihapus dari sistem.
-
13
Layanan gagal menemukan layanan yang diperlukan dari layanan dependen.
-
14
Layanan telah dinonaktifkan dari sistem.
-
15
Layanan tidak memiliki autentikasi yang benar untuk dijalankan pada sistem.
-
16
Layanan ini sedang dihapus dari sistem.
-
17
Layanan ini tidak memiliki utas eksekusi.
-
18
Layanan ini memiliki dependensi melingkar ketika dimulai.
-
19
Layanan berjalan dengan nama yang sama.
-
20
Nama layanan memiliki karakter yang tidak valid.
-
Parameter tidak valid
-
21
Parameter yang tidak valid telah diteruskan ke layanan.
-
22
Akun tempat layanan ini berjalan tidak valid atau tidak memiliki izin untuk menjalankan layanan.
-
23
Layanan ada dalam database layanan yang tersedia dari sistem.
-
24
Layanan saat ini dijeda dalam sistem.
-
Lainnya
-
22 4294967295
Keterangan
Instans Win32_SecurityDescriptor mewakili jenis data SECURITY_DESCRIPTOR_CONTROL dan berisi daftar kontrol akses diskresi (DACL) dan daftar kontrol akses sistem (SACL). Untuk informasi selengkapnya, lihat Daftar Kontrol Akses.
Jika SeSecurityPrivilege tidak diberikan atau diaktifkan saat mendapatkan deskriptor keamanan, maka hanya DACL yang dikembalikan dalam deskriptor keamanan yang dikembalikan. Untuk informasi selengkapnya, lihat Konstanta Hak Istimewa dan Menjalankan Operasi Istimewa.
Contoh
Saat mengambil deskriptor keamanan di VBScript, pastikan untuk "Keamanan" dan jalankan sebagai Admin, seperti yang ditunjukkan dalam cuplikan kode berikut. Jika tidak, kode Anda mungkin melemparkan kesalahan izin.
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate, (Security)}!\\" & strComputer & "\root\cimv2")
Demikian pula, dalam VB.NET, pastikan untuk mengatur "EnablePrivileges = True" dan jalankan Aplikasi sebagai Admin.
Scope = New ManagementScope([String].Format("\\{0}\root\CIMV2", ComputerName), Nothing)
Scope.Options.EnablePrivileges = True
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows Vista |
Server minimum yang didukung |
Windows Server 2008 |
Ruang nama |
Root\CIMV2 |
MOF |
|
DLL |
|