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 |
|
Archivo DLL |
|