Zugriff auf WMI-Namespaces

WMI verwendet einen standardmäßigen Windows-Sicherheitsdeskriptor, um den Zugriff auf WMI-Namespaces zu steuern. Wenn Sie entweder über den WMI-Moniker „winmgmts“ oder einen Aufruf von IWbemLocator::ConnectServer oder SWbemLocator.ConnectServer eine Verbindung mit WMI herstellen, stellen Sie eine Verbindung mit einem bestimmten Namespace her.

Die folgenden Informationen werden in diesem Thema erläutert:

WMI-Namespacesicherheit

WMI gewährleistet die Namespacesicherheit durch den Vergleich des Zugriffstokens des Benutzers, der eine Verbindung mit dem Namespace herstellt, mit dem Sicherheitsdeskriptor des Namespace. Weitere Informationen zur Windows-Sicherheit finden Sie unter Zugriff auf sicherungsfähige WMI-Objekte.

Bedenken Sie, dass sich ab Windows Vista die Benutzerkontensteuerung (User Account Control, UAC) auf den Zugriff auf WMI-Daten auswirkt, und was mit dem WMI-Steuerelement konfiguriert werden kann. Weitere Informationen finden Sie unter Standardberechtigungen für WMI-Namespaces und Benutzerkontensteuerung und WMI.

Der Zugriff auf WMI-Namespaces ist auch betroffen, wenn die Verbindung von einem Remotecomputer aus hergestellt wird. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit WMI auf einem Remotecomputer, Schützen einer WMI-Remoteverbindung und Herstellen einer Verbindung über die Windows-Firewall.

Anbieter müssen sich bei der Bestimmung, ob das Clientskript oder die Anwendung Daten empfangen soll, auf die Identitätswechseleinstellung für die Verbindung verlassen. Weitere Informationen zum Skript und zu Clientanwendungen finden Sie unter Festlegen der Prozesssicherheit für Clientanwendungen. Weitere Informationen zum Identitätswechsel des Anbieters finden Sie unter Entwickeln eines WMI-Anbieters.

WMI-Namespaceüberwachung

WMI verwendet den Namespace Systemzugriffssteuerungslisten (System Access Control Lists, SACL), um die Namespaceaktivität zu überwachen. Um die Überwachung von WMI-Namespaces zu aktivieren, verwenden Sie die Registerkarte Sicherheit für das WMI-Steuerelement, um die Überwachungseinstellungen für den Namespace zu ändern.

Die Überwachung ist während der Installation des Betriebssystems nicht aktiviert. Um die Überwachung zu aktivieren, klicken Sie im Standardfenster Sicherheit auf die Registerkarte Überwachung. Anschließend können Sie einen Überwachungseintrag hinzufügen.

Die Gruppenrichtlinie für den lokalen Computer muss so festgelegt werden, dass die Überwachung zugelassen wird. Sie können die Überwachung aktivieren, indem Sie das MMC-Snap-In „Gpedit.msc“ ausführen und unter Computerkonfiguration>Windowseinstellungen>Sicherheitseinstellungen>Lokale Richtlinien>Überwachungsrichtlinie die Option Objektzugriffsversuche überwachen festlegen.

Ein Überwachungseintrag bearbeitet die SACL des Namespace. Wenn Sie einen Überwachungseintrag hinzufügen, handelt es sich entweder um einen Benutzer, eine Gruppe, einen Computer oder einen integrierten Sicherheitsprinzipal. Nachdem Sie den Eintrag hinzugefügt haben, können Sie die Zugriffsvorgänge festlegen, die zu Sicherheitsprotokollereignissen führen. Für die Gruppe „Authentifizierte Benutzer“ können Sie beispielsweise auf „Methoden ausführen“ klicken. Diese Einstellung führt zu Sicherheitsprotokollereignissen, wenn ein Mitglied der Gruppe „Authentifizierte Benutzer“ eine Methode in diesem Namespace ausführt. Die Ereignis-ID für WMI-Ereignisse lautet 4662.

Ihr Konto muss zur Gruppe „Administratoren“ gehören und mit erhöhten Rechten ausgeführt werden, um die Überwachungseinstellungen ändern zu können. Das integrierte Administratorkonto kann ebenfalls die Sicherheit oder Überwachung für einen Namespace ändern. Weitere Informationen zur Ausführung im Modus mit erhöhten Rechten finden Sie unter Benutzerkontensteuerung und WMI.

Die WMI-Überwachung generiert bei Zugriffsversuchen auf WMI-Namespaces Erfolgs- oder Fehlerereignisse. Der Dienst überwacht keine erfolgreichen oder fehlerhaften Anbietervorgänge. Wenn ein Skript beispielsweise eine Verbindung mit WMI und einem Namespace herstellt, kann es fehlschlagen, weil das Konto, unter dem das Skript ausgeführt wird, keinen Zugriff auf diesen Namespace hat. Möglicherweise wird aber auch ein Vorgang wie das Bearbeiten der DACL versucht, für den keine Berechtigung erteilt wurde.

Wenn Sie für die Ausführung ein Konto der Gruppe „Administratoren“ verwenden, können Sie die Namespaceüberwachungsereignisse über die Ereignisanzeige der Benutzeroberfläche anzeigen.

Namespaceereignistypen

WMI verfolgt die folgenden Ereignistypen im Sicherheitsereignisprotokoll:

  • Überwachungserfolg

    Der Vorgang muss zwei Schritte erfolgreich ausführen, damit die Überwachung erfolgreich ist. Zunächst gewährt WMI anhand der Client-SID und der Namespace-DACL Zugriff auf die Clientanwendung oder das Skript. Zweitens muss der angeforderte Vorgang den Zugriffsrechten in der Namespace-SACL für diesen Benutzer oder diese Gruppe entsprechen.

  • Überwachungsfehler

    WMI verweigert den Zugriff auf den Namespace, der angeforderte Vorgang entspricht aber den Zugriffsrechten in der Namespace-SACL für diesen Benutzer oder diese Gruppe.

Namespacezugriffseinstellungen

Sie können die Namespacezugriffsrechte für verschiedene Konten im WMI-Steuerelement anzeigen. Diese Konstanten werden unter Namespace-Zugriffsberechtigungskonstanten beschrieben. Sie können den Zugriff auf einen WMI-Namespace mithilfe des WMI-Steuerelements oder programmgesteuert ändern. Weitere Informationen finden Sie unter Ändern der Zugriffssicherheit für sicherungsfähige Objekte.

WMI überwacht Änderungen an allen Zugriffsberechtigungen, die in der folgenden Liste aufgeführt sind, mit Ausnahme der Berechtigung „Remoteaktivierung“. Die Änderungen werden als Überwachungserfolg oder -fehler entsprechend der Berechtigung „Sicherheit bearbeiten“ protokolliert.

Methoden ausführen

Erlaubt dem Benutzer das Ausführen von Methoden, die für WMI-Klassen definiert sind. Entspricht der Zugriffsberechtigungskonstante WBEM_METHOD_EXECUTE.

Vollständiger Schreibzugriff

Erlaubt den vollständigen Lese-, Schreib- und Löschzugriff für WMI-Klassen und -Klasseninstanzen, sowohl statisch als auch dynamisch. Entspricht der Zugriffsberechtigungskonstante WBEM_FULL_WRITE_REP.

Eingeschränkter Schreibzugriff

Erlaubt den Schreibzugriff auf statische WMI-Klasseninstanzen. Entspricht der Zugriffsberechtigungskonstante WBEM_PARTIAL_WRITE-REP.

Anbieterschreibzugriff

Erlaubt den Schreibzugriff auf dynamische WMI-Klasseninstanzen. Entspricht der Zugriffsberechtigungskonstante WBEM_WRITE_PROVIDER.

Konto aktivieren

Erlaubt den Lesezugriff auf WMI-Klasseninstanzen. Entspricht der Zugriffsberechtigungskonstante WBEM_ENABLE.

Remoteaktivierung

Erlaubt den Zugriff auf den Namespace durch Remotecomputer. Entspricht der Zugriffsberechtigungskonstante WBEM_REMOTE_ACCESS.

Lesesicherheit

Erlaubt den schreibgeschützten Zugriff auf DACL-Einstellungen. Entspricht der Zugriffsberechtigungskonstante READ_CONTROL.

Bearbeitungssicherheit

Erlaubt den Schreibzugriff auf DACL-Einstellungen. Entspricht der Zugriffsberechtigungskonstante WRITE_DAC.

Standardberechtigungen für WMI-Namespaces

Es gibt folgende Standardsicherheitsgruppen:

  • Authentifizierte Benutzer
  • LOKALER DIENST
  • NETZWERKDIENST
  • Administratoren (auf dem lokalen Computer)

Für „Authentifizierte Benutzer“, „LOCAL SERVICE“ und „NETWORK SERVICE“ gibt es folgende Standardzugriffsberechtigungen:

  • Methoden ausführen
  • Vollständiger Schreibzugriff
  • Konto aktivieren

Konten in der Gruppe „Administratoren“ verfügen über alle Rechte, einschließlich der Bearbeitung von Sicherheitsdeskriptoren. Aufgrund der Benutzerkontensteuerung (User Account Control, UAC) muss das WMI-Steuerelement oder das Skript jedoch mit erhöhten Sicherheitsanforderungen ausgeführt werden. Weitere Informationen finden Sie unter Benutzerkontensteuerung und WMI.

Manchmal muss ein Skript oder eine Anwendung eine Administratorberechtigung aktivieren (z. B SeSecurityPrivilege), um einen Vorgang auszuführen. Beispielsweise kann ein Skript die GetSecurityDescriptor-Methode der Klasse Win32_Printer ohne SeSecurityPrivilege ausführen und die Sicherheitsinformationen in der besitzerverwalteten Zugriffssteuerungsliste (DACL) des Druckerobjekts-Sicherheitsdeskriptorabrufen. Die SACL-Informationen werden jedoch nur dann an das Skript zurückgegeben, wenn die Berechtigung SeSecurityPrivilege verfügbar und für das Konto aktiviert ist. Wenn das Konto nicht über die Berechtigung verfügt, kann es nicht aktiviert werden. Weitere Informationen finden Sie unter Ausführen privilegierter Vorgänge.

Informationen zu WMI