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
CIMWin32.mof
DLL
CIMWin32.dll

Baca juga

Win32_Service

Konstanta Hak Istimewa

Objek Deskriptor Keamanan WMI

Mengubah Keamanan Akses pada Objek Yang Dapat Diamankan

Kontrol Akun Pengguna dan WMI