WMI-Zugriff für asynchrone Anrufe verweigert

Bei asynchronen Rückrufen für WMI-Ereignisse an Remotecomputer.

Möglicherweise müssen Sie Folgendes tun.
Links:
http://stackoverflow.com/questions/2782317/exception-while-managementeventwatcherwmi-to-notify-events-from-remote-machine
https://msdn.microsoft.com/en-us/library/aa393266(v=vs.85).aspx

Text:
Festlegen der DCOM-Sicherheit, damit ein Benutzer remote auf einen Computer zugreifen kann
Die Sicherheit in WMI bezieht sich auf die Verbindung zu einem WMI-Namespace. WMI verwendet DCOM zur Verarbeitung von Fernanrufen. Ein Grund für den Fehler beim Herstellen einer Verbindung zu einem Remotecomputer ist ein DCOM-Fehler (Fehler „DCOM-Zugriff verweigert“, Dezimalzahl -2147024891 oder hexadezimal 0x80070005). Weitere Informationen zur DCOM-Sicherheit in WMI für C ++ - Anwendungen finden Sie unter Festlegen der Prozesssicherheit für Clientanwendungen.
Sie können die DCOM-Einstellungen für WMI mit dem Dienstprogramm DCOM Config (DCOMCnfg.exe) konfigurieren, das Sie unter Verwaltung in der Systemsteuerung finden. Dieses Dienstprogramm stellt die Einstellungen bereit, mit denen bestimmte Benutzer über DCOM eine Remoteverbindung zum Computer herstellen können. Mitglieder der Gruppe Administratoren dürfen standardmäßig eine Remoteverbindung zum Computer herstellen. Mit diesem Dienstprogramm können Sie die Sicherheit so einstellen, dass der WMI-Dienst gestartet, darauf zugegriffen und konfiguriert wird.
Das folgende Verfahren beschreibt, wie Sie bestimmten Benutzern und Gruppen DCOM-Remotestart- und Aktivierungsberechtigungen erteilen. Wenn Computer A eine Remoteverbindung mit Computer B herstellt, können Sie diese Berechtigungen auf Computer B festlegen, damit ein Benutzer oder eine Gruppe, die nicht zur Administratorgruppe auf Computer B gehört, DCOM-Start- und Aktivierungsaufrufe auf Computer B ausführen kann.
Aa393266.wedge (en-us, VS.85) .gifZum Erteilen von DCOM-Fernstart- und Aktivierungsberechtigungen für einen Benutzer oder eine Gruppe
Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie DCOMCNFG ein, und klicken Sie dann auf OK.
Erweitern Sie im Dialogfeld Komponentendienste die Option Komponentendienste, erweitern Sie Computer, klicken Sie mit der rechten Maustaste auf Arbeitsplatz, und klicken Sie auf Eigenschaften.
Klicken Sie im Dialogfeld Eigenschaften von Arbeitsplatz auf die Registerkarte COM-Sicherheit.
Klicken Sie unter Start- und Aktivierungsberechtigungen auf Limits bearbeiten.
Führen Sie im Dialogfeld Startberechtigung die folgenden Schritte aus, wenn Ihr Name oder Ihre Gruppe nicht in der Liste Gruppen- oder Benutzernamen angezeigt wird:
Klicken Sie im Dialogfeld Startberechtigung auf Hinzufügen.
Fügen Sie im Dialogfeld Benutzer, Computer oder Gruppen auswählen Ihren Namen und die Gruppe in das Feld Geben Sie die zu wählenden Objektnamen ein ein, und klicken Sie dann auf OK.
Wählen Sie im Dialogfeld Startberechtigung Ihren Benutzer und Ihre Gruppe im Feld Gruppe oder Benutzernamen aus. Wählen Sie in der Spalte Zulassen unter Berechtigungen für Benutzer die Option Remote-Start und Remote-Aktivierung aus, und klicken Sie dann auf OK.
Das folgende Verfahren beschreibt, wie Sie bestimmten Benutzern und Gruppen DCOM-RAS-Berechtigungen erteilen. Wenn Computer A eine Remoteverbindung mit Computer B herstellt, können Sie diese Berechtigungen für Computer B festlegen, damit ein Benutzer oder eine Gruppe, die nicht zur Administratorgruppe von Computer B gehört, eine Verbindung zu Computer B herstellen kann.
Aa393266.wedge (en-us, VS.85) .gifZum Erteilen von DCOM-RAS-Berechtigungen
Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie DCOMCNFG ein, und klicken Sie dann auf OK.
Erweitern Sie im Dialogfeld Komponentendienste die Option Komponentendienste, erweitern Sie Computer, klicken Sie mit der rechten Maustaste auf Arbeitsplatz, und klicken Sie auf Eigenschaften.
Klicken Sie im Dialogfeld Eigenschaften von Arbeitsplatz auf die Registerkarte COM-Sicherheit.
Klicken Sie unter Zugriffsberechtigungen auf Grenzwerte bearbeiten.
Wählen Sie im Dialogfeld Zugriffsberechtigung im Feld Gruppen- oder Benutzernamen den Namen ANONYMOUS LOGON aus. Wählen Sie in der Spalte Zulassen unter Berechtigungen für Benutzer die Option Remotezugriff aus, und klicken Sie dann auf OK.

Einrichten einer Remote-WMI-Verbindung

Für die Verbindung mit einem WMI-Namespace auf einem Remotecomputer müssen Sie möglicherweise die Einstellungen für Windows-Firewall, Benutzerkontensteuerung (UAC), DCOM oder Common Information Model Object Manager (CIMOM) ändern.
Die folgenden Abschnitte werden in diesem Thema behandelt:
Windows-Firewall-Einstellungen
Einstellungen für die Benutzerkontensteuerung
DCOM-Einstellungen
CIMOM-Einstellungen
Verwandte Themen
Windows-Firewall-Einstellungen
WMI-Einstellungen für Windows-Firewall-Einstellungen aktivieren nur WMI-Verbindungen und nicht auch andere DCOM-Anwendungen.
In der Firewall für WMI auf dem Remote-Zielcomputer muss eine Ausnahme festgelegt werden. Die Ausnahme für WMI ermöglicht es WMI, Remoteverbindungen und asynchrone Rückrufe an Unsecapp.exe zu empfangen. Weitere Informationen finden Sie unter Festlegen der Sicherheit für einen asynchronen Anruf.
Wenn eine Clientanwendung eine eigene Senke erstellt, muss diese Senke explizit zu den Firewall-Ausnahmen hinzugefügt werden, damit Rückrufe erfolgreich sind.
Die Ausnahme für WMI funktioniert auch, wenn WMI mit einem festen Port mit dem Befehl winmgmt / standalonehost gestartet wurde. Weitere Informationen finden Sie unter Einrichten eines festen Ports für WMI.
Sie können den WMI-Verkehr über die Windows-Firewall-Benutzeroberfläche aktivieren oder deaktivieren.
Aa822854.wedge (en-us, VS.85) .gifUm den WMI-Verkehr über die Firewall-Benutzeroberfläche zu aktivieren oder zu deaktivieren
Klicken Sie in der Systemsteuerung auf Sicherheit und dann auf Windows-Firewall.
Klicken Sie auf Einstellungen ändern und dann auf die Registerkarte Ausnahmen.
Aktivieren Sie im Fenster Ausnahmen das Kontrollkästchen für Windows Management Instrumentation (WMI), um den WMI-Verkehr durch die Firewall zu aktivieren. Deaktivieren Sie das Kontrollkästchen, um den WMI-Verkehr zu deaktivieren.
Sie können den WMI-Verkehr über die Firewall an der Eingabeaufforderung aktivieren oder deaktivieren.
Aa822854.wedge (en-us, VS.85) .gifUm den WMI-Verkehr an der Eingabeaufforderung mithilfe der WMI-Regelgruppe zu aktivieren oder zu deaktivieren
Verwenden Sie die folgenden Befehle an einer Eingabeaufforderung. Geben Sie Folgendes ein, um den WMI-Verkehr durch die Firewall zu aktivieren.
netsh advfirewall firewall set rule group = "Windows Management Instrumentation (wmi)" new enable = yes
Geben Sie den folgenden Befehl ein, um den WMI-Verkehr durch die Firewall zu deaktivieren.
netsh advfirewall firewall set rule group = "Windows Management Instrumentation (wmi)" new enable = no
Anstatt den einzelnen WMI-Regelgruppenbefehl zu verwenden, können Sie auch einzelne Befehle für DCOM, WMI-Dienst und Senke verwenden.
Aa822854.wedge (en-us, VS.85) .gifUm den WMI-Verkehr mithilfe separater Regeln für DCOM, WMI, Rückrufsenke und ausgehende Verbindungen zu aktivieren
Verwenden Sie den folgenden Befehl, um eine Firewall-Ausnahme für DCOM-Port 135 einzurichten.
netsh advfirewall firewall add rule dir = in name = ”DCOM” program =% systemroot% \ system32 \ svchost.exe service = rpcss action = allow protocol = TCP localport = 135
Verwenden Sie den folgenden Befehl, um eine Firewall-Ausnahme für den WMI-Dienst einzurichten.
netsh advfirewall firewall add rule dir = in name = ”WMI” program =% systemroot% \ system32 \ svchost.exe service = winmgmt action = allow protocol = TCP localport = any
Verwenden Sie den folgenden Befehl, um eine Firewall-Ausnahme für die Senke einzurichten, die Rückrufe von einem Remotecomputer empfängt.
netsh advfirewall firewall add rule dir = in name = "UnsecApp" program =% systemroot% \ system32 \ wbem \ unsecapp.exe action = allow
Verwenden Sie den folgenden Befehl, um eine Firewall-Ausnahme für ausgehende Verbindungen zu einem Remotecomputer einzurichten, mit dem der lokale Computer asynchron kommuniziert.
netsh advfirewall firewall add rule dir = out name = "WMI_OUT" program =% systemroot% \ system32 \ svchost.exe service = winmgmt action = allow protocol = TCP localport = any
Verwenden Sie die folgenden Befehle, um die Firewall-Ausnahmen separat zu deaktivieren.
Aa822854.wedge (en-us, VS.85) .gifUm den WMI-Verkehr mithilfe separater Regeln für DCOM, WMI, Rückrufsenke und ausgehende Verbindungen zu deaktivieren
So deaktivieren Sie die DCOM-Ausnahme
Netsh Advfirewall Firewall Löschregel Name = "DCOM"
So deaktivieren Sie die WMI-Dienstausnahme
Netsh Advfirewall Firewall Löschregel Name = "WMI"
So deaktivieren Sie die Senkenausnahme
Netsh Advfirewall Firewall Löschregel Name = "UnsecApp"
So deaktivieren Sie die ausgehende Ausnahme
Netsh Advfirewall Firewall Löschregel Name = "WMI_OUT"
Einstellungen für die Benutzerkontensteuerung
Die UAC-Zugriffs-Token-Filterung (User Account Control) kann sich darauf auswirken, welche Vorgänge in WMI-Namespaces zulässig sind oder welche Daten zurückgegeben werden. Unter UAC werden alle Konten in der lokalen Administratorgruppe mit einem Standardbenutzerzugriffstoken ausgeführt, das auch als UAC-Zugriffstokenfilterung bezeichnet wird. Ein Administratorkonto kann ein Skript mit einer erhöhten Berechtigung ausführen - "Als Administrator ausführen".
Wenn Sie keine Verbindung zum integrierten Administratorkonto herstellen, wirkt sich die Benutzerkontensteuerung unterschiedlich auf die Verbindungen zu einem Remotecomputer aus, je nachdem, ob sich die beiden Computer in einer Domäne oder einer Arbeitsgruppe befinden. Weitere Informationen zu UAC und Remoteverbindungen finden Sie unter Benutzerkontensteuerung und WMI.
DCOM-Einstellungen
Weitere Informationen zu DCOM-Einstellungen finden Sie unter Sichern einer Remote-WMI-Verbindung. Die Benutzerkontensteuerung wirkt sich jedoch auf Verbindungen für Nicht-Domänen-Benutzerkonten aus. Wenn Sie mit einem Nicht-Domänen-Benutzerkonto, das in der lokalen Administratorgruppe des Remotecomputers enthalten ist, eine Verbindung zu einem Remotecomputer herstellen, müssen Sie dem Konto explizit Remote-DCOM-Zugriffs-, Aktivierungs- und Startrechte gewähren.
CIMOM-Einstellungen
Die CIMOM-Einstellungen müssen aktualisiert werden, wenn die Remoteverbindung zwischen Computern besteht, die keine Vertrauensstellung haben. Andernfalls schlägt eine asynchrone Verbindung fehl. Diese Einstellung sollte nicht für Computer in derselben Domäne oder in vertrauenswürdigen Domänen geändert werden.
Der folgende Registrierungseintrag muss geändert werden, um anonyme Rückrufe zu ermöglichen:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ WBEM \ CIMOM \ AllowAnonymousCallback
Datentyp
REG_DWORD
Wenn der Wert AllowAnonymousCallback auf 0 gesetzt ist, verhindert der WMI-Dienst anonyme Rückrufe an den Client. Wenn der Wert auf 1 gesetzt ist, wird th