Méthode GetSecurityDescriptor de la classe Win32_Service (Services Bureau à distance)
La méthode GetSecurityDescriptor retourne le descripteur de sécurité qui contrôle l’accès au service. Le descripteur est retourné en tant qu’instance de Win32_SecurityDescriptor.
Syntaxe
uint32 GetSecurityDescriptor(
[out] Win32_SecurityDescriptor Descriptor
);
Paramètres
-
Descriptor [out]
-
Descripteur de sécurité associé au service.
Valeur retournée
Retourne l’une des valeurs répertoriées dans la liste suivante, ou une autre valeur pour indiquer une erreur. Pour obtenir des codes d’erreur supplémentaires, consultez Constantes d’erreur WMI ou WbemErrorEnum. Pour connaître les valeurs HRESULT générales, consultez Codes d’erreur système.
-
0
-
La demande a été acceptée.
-
1
-
La demande n'est pas prise en charge.
-
2
-
L’utilisateur ne dispose pas des droits d’accès suffisants.
-
3
-
Le service ne peut pas être arrêté car d'autres services en cours d'exécution en dépendent.
-
4
-
Le code de contrôle demandé n'est pas valide ou est inacceptable pour le service.
-
5
-
Le code de contrôle demandé ne peut pas être envoyé au service car l’état du service (propriété Win32_BaseService.State) est égal à 0, 1 ou 2.
-
6
-
Le service n'a pas été démarré.
-
7
-
Le service n'a pas répondu à la demande de démarrage en temps voulu.
-
8
-
Un échec inconnu s’est produit lors du démarrage du service.
-
9
-
Le chemin du répertoire vers le fichier exécutable du service est introuvable.
-
10
-
Le service est déjà en cours d'exécution.
-
11
-
La base de données pour ajouter un nouveau service est verrouillée.
-
12
-
Une dépendance sur laquelle ce service repose a été supprimée du système.
-
13
-
Le service n'a pas pu trouver le service nécessaire à partir d'un service dépendant.
-
14
-
Le service a été désactivé du système.
-
15
-
Le service ne dispose pas de l'authentification correcte pour être exécuté sur le système.
-
16
-
Ce service est en cours de suppression du système.
-
17
-
Le service n’a pas de thread d’exécution.
-
18
-
Le service a des dépendances circulaires au démarrage.
-
19
-
Un service est en cours d’exécution sous le même nom.
-
20
-
Le nom du service contient des caractères non valides.
-
21
-
Des paramètres non valides ont été transmis au service.
-
22
-
Le compte sous lequel ce service s’exécute n’est pas valide ou ne dispose pas des autorisations nécessaires pour exécuter ce service.
-
23
-
Le service existe dans la base de données des services disponibles dans le système.
-
24
-
Le service est actuellement mis en pause dans le système.
Notes
L’instance Win32_SecurityDescriptor représente un type de données SECURITY_DESCRIPTOR_CONTROL et contient une liste de contrôle d’accès discrétionnaire (DACL) et une liste de contrôle d’accès système (SACL). Pour plus d’informations, consultez Listes de contrôle d’accès.
Si SeSecurityPrivilege n’est pas accordé ou activé lors de l’obtention d’un descripteur de sécurité, seule la liste DACL est retournée dans le descripteur de sécurité retourné. Pour plus d’informations, consultez Constantes de privilège et Exécution d’opérations privilégiées.
Exemples
Lors de la récupération d’un descripteur de sécurité dans VBScript, veillez à utiliser « Security » et à exécuter en tant qu’Administrateur, comme indiqué dans l’extrait de code suivant. Sinon, votre code peut générer une erreur d’autorisation.
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate, (Security)}!\\" & strComputer & "\root\cimv2")
De même, dans VB.NET, veillez à définir « EnablePrivileges = True » et à exécuter l’application en tant qu’Administrateur.
Scope = New ManagementScope([String].Format("\\{0}\root\CIMV2", ComputerName), Nothing)
Scope.Options.EnablePrivileges = True
Spécifications
Condition requise | Value |
---|---|
Client minimal pris en charge |
Windows Vista |
Serveur minimal pris en charge |
Windows Server 2008 |
Espace de noms |
Root\CIMv2\TerminalServices |
MOF |
|
DLL |
|