Condividi tramite


Metodo GetSecurityDescriptor della classe Win32_Service (provider WMI CIMWin32)

Il metodo GetSecurityDescriptor restituisce il descrittore di sicurezza che controlla l'accesso al servizio. Il descrittore viene restituito come istanza di Win32_SecurityDescriptor.

Sintassi

uint32 GetSecurityDescriptor(
  [out] Win32_SecurityDescriptor Descriptor
);

Parametri

Descrittore [out]

Descrittore di sicurezza associato al servizio.

Valore restituito

Restituisce uno dei valori elencati nell'elenco seguente o un valore diverso per indicare un errore. Per altri codici di errore, vedere Costanti di errore WMI o WbemErrorEnum. Per i valori HRESULT generali, vedere Codici di errore di sistema.

Success

0

La richiesta è stata accettata.

1

La richiesta non è supportata.

Accesso negato

2

L'utente non ha ottenuto l'accesso necessario.

3

Impossibile arrestare il servizio perché altri servizi in esecuzione dipendono dal servizio.

4

Il codice di controllo richiesto non è valido o non è accettabile per il servizio.

5

Impossibile inviare il codice di controllo richiesto al servizio perché lo stato del servizio (Win32_BaseService.Proprietà state ) è uguale a 0, 1 o 2.

6

Il servizio non è stato avviato.

7

Il servizio non ha risposto in tempo utile alla richiesta di avvio.

Errore sconosciuto

8

Errore sconosciuto durante l'avvio del servizio.

Privilegio mancante

9

Impossibile trovare il percorso della directory del file eseguibile del servizio.

10

Il servizio è già in esecuzione.

11

Il database a cui aggiungere il nuovo servizio è bloccato.

12

Una dipendenza da cui si basa questo servizio è stata rimossa dal sistema.

13

Impossibile trovare un servizio dipendente necessario.

14

Il servizio è stato disabilitato dal sistema.

15

Il servizio non dispone delle credenziali di autenticazione corrette per l'esecuzione nel sistema.

16

Questo servizio viene rimosso dal sistema.

17

Il servizio non ha thread di esecuzione.

18

Il servizio ha dipendenze circolari all'avvio.

19

Un servizio viene eseguito con lo stesso nome.

20

Il nome del servizio ha caratteri non validi.

Parametro non valido

21

I parametri non validi sono stati passati al servizio.

22

L'account con cui viene eseguito il servizio non è valido o non dispone delle autorizzazioni per l'esecuzione del servizio.

23

Il servizio esiste già nel database dei servizi disponibili dal sistema.

24

Il servizio è attualmente sospeso nel sistema.

Altri

22 4294967295

Osservazioni:

L'istanza di Win32_SecurityDescriptor rappresenta un tipo di dati edizione StandardCURITY_DESCRIPTOR_CONTROL e contiene un elenco di controllo di accesso discrezionale (DACL) e un elenco di controllo di accesso di sistema (SACL). Per altre informazioni, vedere Controllo di accesso Elenchi.

Se l'oggetto SeSecurityPrivilege non viene concesso o abilitato quando si ottiene un descrittore di sicurezza, nel descrittore di sicurezza restituito viene restituito solo l'elenco DACL. Per altre informazioni, vedere Costanti dei privilegi ed esecuzione di operazioni con privilegi.

Esempi

Quando si recupera un descrittore di sicurezza in VBScript, assicurarsi di "Sicurezza" ed eseguire come Amministrazione, come illustrato nel frammento di codice seguente. In caso contrario, il codice potrebbe generare un errore di autorizzazione.

Set objWMIService = GetObject("winmgmts:" _
  & "{impersonationLevel=impersonate, (Security)}!\\" & strComputer & "\root\cimv2")

Analogamente, in VB.NET assicurarsi di impostare "EnablePrivileges = True" ed eseguire l'applicazione come Amministrazione.

Scope = New ManagementScope([String].Format("\\{0}\root\CIMV2", ComputerName), Nothing)
Scope.Options.EnablePrivileges = True

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Spazio dei nomi
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Vedi anche

Win32_service

Costanti privilegio

Oggetti descrittore di sicurezza WMI

Modifica della sicurezza di accesso per oggetti a protezione diretta

Controllo dell'account utente e WMI