Méthode GetSecurityDescriptor de la classe Win32_Service (fournisseurs WMI CIMWin32)
La méthode GetSecurityDescriptor retourne le descripteur de sécurité qui contrôle l’accès au service. Le descripteur de sécurité 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.
-
Réussite
-
0
La demande a été acceptée.
-
1
La demande n'est pas prise en charge.
-
Accès refusé
-
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 requis 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.
-
Échec inconnu
-
8
Un échec inconnu s’est produit lors du démarrage du service.
-
Privilège manquant
-
9
Le chemin du répertoire de l’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.
-
Paramètre non valide
-
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 de l’autorisation nécessaire 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.
-
Autres
-
22 4294967295
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é en 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, en 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 |
MOF |
|
DLL |
|