Método GetSecurityDescriptor de la clase Win32_Service (Servicios de Escritorio remoto)
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.
-
0
-
Se aceptó la solicitud.
-
1
-
No se admite la solicitud.
-
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.
-
8
-
Error desconocido al iniciar el servicio.
-
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.
-
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.
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\TerminalServices |
MOF |
|
Archivo DLL |
|