GetSecurityDescriptor-Methode der Win32_Service-Klasse (Remotedesktopdienste)
Die GetSecurityDescriptor-Methode gibt den Sicherheitsdeskriptor zurück, der den Zugriff auf den Dienst steuert. Der Deskriptor wird als Instanz von Win32 _ SecurityDescriptorzurückgegeben.
Syntax
uint32 GetSecurityDescriptor(
[out] Win32_SecurityDescriptor Descriptor
);
Parameter
-
Deskriptor [ out]
-
Der dem Dienst zugeordnete Sicherheitsdeskriptor.
Rückgabewert
Gibt einen der in der folgenden Liste aufgeführten Werte oder einen anderen Wert zurück, um einen Fehler anzugeben. Weitere Fehlercodes finden Sie unter WMI-Fehlerkonstanten oder WbemErrorEnum. Allgemeine HRESULT-Werte finden Sie unter Systemfehlercodes.
-
0
-
Die Anforderung wurde akzeptiert.
-
1
-
Die Anforderung wird nicht unterstützt.
-
2
-
Der Benutzer hatte nicht den erforderlichen Zugriff.
-
3
-
Der Dienst kann nicht beendet werden, da andere ausgeführte Dienste davon abhängig sind.
-
4
-
Der angeforderte Steuerungscode ist nicht gültig, oder es ist für den Dienst nicht akzeptabel.
-
5
-
Der angeforderte Steuerungscode kann nicht an den Dienst gesendet werden, da der Zustand des Diensts (Win32 _ BaseService) ist.State-Eigenschaft) ist gleich 0, 1 oder 2.
-
6
-
Der Dienst wurde nicht gestartet.
-
7
-
Der Dienst hat auf die Startanforderung nicht rechtzeitig reagiert.
-
8
-
Unbekannter Fehler beim Starten des Diensts.
-
9
-
Der Verzeichnispfad zur ausführbaren Dienstdatei wurde nicht gefunden.
-
10
-
Der Dienst wird schon ausgeführt.
-
11
-
Die Datenbank zum Hinzufügen eines neuen Diensts ist gesperrt.
-
12
-
Eine Abhängigkeit, von der dieser Dienst abhängt, wurde aus dem System entfernt.
-
13
-
Der Dienst hat den Dienst nicht gefunden, der von einem abhängigen Dienst benötigt wird.
-
14
-
Der Dienst wurde vom System deaktiviert.
-
15
-
Der Dienst hat nicht die richtige Authentifizierung, um im System ausgeführt zu werden.
-
16
-
Dieser Dienst wird aus dem System entfernt.
-
17
-
Der Dienst verfügt über keinen Ausführungsthread.
-
18
-
Der Dienst weist beim Start zirkuläre Abhängigkeiten auf.
-
19
-
Ein Dienst wird unter demselben Namen ausgeführt.
-
20
-
Der Dienstname weist ungültige Zeichen auf.
-
21
-
Ungültige Parameter wurden an den Dienst übergeben.
-
22
-
Das Konto, unter dem dieser Dienst ausgeführt wird, ist entweder ungültig oder verfügt nicht über die Berechtigungen zum Ausführen des Diensts.
-
23
-
Der Dienst ist in der Datenbank der im System verfügbaren Dienste vorhanden.
-
24
-
Der Dienst ist im System derzeitig angehalten.
Hinweise
Die Win32 _ SecurityDescriptor-Instanz stellt einen SECURITY _ DESCRIPTOR _ CONTROL-Datentyp dar und enthält eine DACL (Discretionary Access Control List) und eine SACL (System Access Control List). Weitere Informationen finden Sie unter Access Control Lists.
Wenn seSecurityPrivilege beim Abrufen eines Sicherheitsdeskriptors nicht gewährt oder aktiviert wird, wird nur die DACL in der zurückgegebenen Sicherheitsbeschreibung zurückgegeben. Weitere Informationen finden Sie unter Berechtigungskonstanten und Ausführen privilegierter Vorgänge.
Beispiele
Achten Sie beim Abrufen eines Sicherheitsdeskriptors in VBScript darauf, "Sicherheit" zu verwenden und als Administrator auszuführen, wie im folgenden Codeausschnitt gezeigt. Andernfalls kann Ihr Code einen Berechtigungsfehler auslösen.
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate, (Security)}!\\" & strComputer & "\root\cimv2")
Achten Sie auf ähnliche Weise in VB.NET darauf, "EnablePrivileges = True" festzulegen und die Anwendung als Administrator auszuführen.
Scope = New ManagementScope([String].Format("\\{0}\root\CIMV2", ComputerName), Nothing)
Scope.Options.EnablePrivileges = True
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows Vista |
| Unterstützte Mindestversion (Server) |
Windows Server 2008 |
| Namespace |
Root \ CIMv2 \ TerminalServices |
| MOF |
|
| DLL |
|