Método GetSecurityDescriptor de la clase Win32_Service (proveedores de WMI CIMWin32)

El método GetSecurityDescriptor devuelve el descriptor de seguridad que controla el acceso al servicio. El descriptor se devuelve como una instancia de Win32_SecurityDescriptor.

Sintaxis

uint32 GetSecurityDescriptor(
  [out] Win32_SecurityDescriptor Descriptor
);

Parámetros

Descriptor [out]

Descriptor de seguridad asociado al servicio.

Valor devuelto

Devuelve uno de los valores enumerados en la lista siguiente o un valor diferente para indicar un error. Para obtener códigos de error adicionales, consulte Constantes de error de WMI o WbemErrorEnum. Para obtener valores generales de HRESULT, consulte códigos de error del sistema.

Success

0

Se aceptó la solicitud.

1

No se admite la solicitud.

Acceso denegado

2

El usuario no tenía el acceso necesario.

3

No se puede detener el servicio porque otros servicios que se están ejecutando dependen de él.

4

El código de control solicitado no es válido o no es aceptable para el servicio.

5

El código de control solicitado no puede enviarse al servicio porque el estado del servicio (propiedad Win32_BaseService.State) es igual a 0, 1 ó 2.

6

El servicio no se ha iniciado.

7

El servicio no respondió a tiempo a la solicitud de inicio.

Error desconocido

8

Error desconocido al iniciar el servicio.

Faltan privilegios

9

No se encontró la ruta de acceso del directorio al archivo ejecutable del servicio.

10

El servicio ya se está ejecutando.

11

La base de datos para agregar un nuevo servicio está bloqueada.

12

Se quitó del sistema una dependencia en la que se basa este servicio.

13

El servicio no pudo encontrar el servicio necesario de un servicio dependiente.

14

El servicio se ha deshabilitado del sistema.

15

El servicio no tiene la autenticación correcta para ejecutarse en el sistema.

16

Se está quitando el servicio del sistema.

17

El servicio no tiene ningún subproceso de ejecución.

18

El servicio tiene dependencias circulares cuando se inicia.

19

Un servicio se ejecuta con el mismo nombre.

20

El nombre del servicio tiene caracteres no válidos.

Parámetro no válido

21

Se han pasado parámetros no válidos al servicio.

22

La cuenta con la que se ejecuta este servicio no es válida o no dispone de permisos para ejecutar el servicio.

23

El servicio existe en la base de datos de servicios disponibles del sistema.

24

El servicio se encuentra en pausa actualmente en el sistema.

Otros

22 4294967295

Comentarios

La instancia de Win32_SecurityDescriptor representa un tipo de datos SECURITY_DESCRIPTOR_CONTROL y contiene una lista de control de acceso discrecional (DACL) y una lista de control de acceso del sistema (SACL). Para más información, consulte Listas de control de acceso.

Si no se concede o habilita SeSecurityPrivilege al obtener un descriptor de seguridad, solo se devolverá la DACL en el descriptor de seguridad devuelto. Para más información, consulte Constantes de privilegios y Ejecución de operaciones con privilegios.

Ejemplos

Al recuperar un descriptor de seguridad en VBScript, asegúrese de seleccionar "Seguridad" y ejecutarlo como administrador, como se muestra en el siguiente fragmento de código. De lo contrario, el código puede producir un error de permisos.

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

Del mismo modo, en VB.NET, asegúrese de establecer "EnablePrivileges = True" y ejecute la aplicación como administrador.

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

Requisitos

Requisito Valor
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Espacio de nombres
Root\CIMV2
MOF
CIMWin32.mof
Archivo DLL
CIMWin32.dll

Consulte también

Win32_Service

Constantes de privilegios

Objetos descriptores de seguridad de WMI

Cambio de la seguridad de acceso en objetos protegibles

Control de cuentas de usuario y WMI