So debuggen Sie fehlgeschlagene WMI-Anmeldungen

507
JohnEye

Ich kann eine Verbindung zum Zielcomputer herstellen wbemtest, aber wenn ich versuche, eine Anwendung J-Interopmit denselben Anmeldeinformationen zu verwenden, schlägt die Verbindung fehl. Ich versuche herauszufinden warum. Ich habe versucht, mithilfe dieses Handbuchs die Ablaufverfolgung auf dem Zielcomputer zu aktivieren, aber im WMI-ActivityVerzeichnis des Ereignisprotokolls sehe ich nichts, wenn die Verbindung abgelehnt wird.

Gibt es eine Möglichkeit, herauszufinden, warum die Verbindung fehlschlägt? Ich habe Administratorzugriff auf den Remote-Computer. Dies kann verschiedene Ursachen haben, z. B. Sicherheitsrichtlinien, Authentifizierungsmethode, ...

0
Haben Sie einen Fehlercode für den Fehler? harrymc vor 7 Jahren 0
Bitte antworte . harrymc vor 7 Jahren 0
@ harrymc: Sorry, habe das nicht gemerkt. Nein, ich nicht. Tatsächlich stellte sich das Problem heraus, dass J-Interop IPv6 nicht richtig unterstützt. Es funktioniert manchmal, aber es ist nur deshalb so, weil beim Durchlaufen des falschen Codepfads manchmal eine funktionierende Bindung an den Host gewählt wird. Es gibt eine Menge proprietärer Magie. JohnEye vor 7 Jahren 0

1 Antwort auf die Frage

1
Wes Sayeed

Sie sagen nicht, welche Anwendung Sie verwenden, aber dies ist wahrscheinlich ein Berechtigungsproblem, kein WMI-Problem (und würde das Fehlen von WMI-Fehlern in den Protokollen erklären).

Sie sagen, das wbemtestfunktioniert gut auf dem Ziel, also sieht es so aus, als hätte Ihr Konto Berechtigungen auf dem Zielcomputer. Die von Ihnen verwendete Anwendung zeigt dem Ziel jedoch möglicherweise nicht Ihre Anmeldeinformationen an, wenn WMI-Befehle ausgeführt werden. Möglicherweise verwenden Sie ein Dienstkonto oder das Konto NetworkService Ihres eigenen Computers. Diesen würde man nicht automatisch trauen. Es könnte auch ein nicht standardmäßiger Port verwendet werden und wird daher von der Firewall des Remote-Hosts blockiert (dies ist jedoch unwahrscheinlich, es sei denn, die Anwendung erfordert einen Agenten auf dem Ziel). Dies könnte auch ein Problem mit DCOM-Berechtigungen sein.

Einige Dinge, die Sie mit dem Zielcomputer ausführen können, um dies zu überprüfen:

ANMERKUNG Diese Informationen dienen zur Behebung von Pusposen - bitte führen Sie dies in einer kontrollierten Umgebung durch und lassen Sie den Computer nicht so!

  • Fügen Sie den Benutzer "Everyone" zur Gruppe der lokalen Administratoren hinzu. Beachten Sie, dass der Benutzer "Jeder" ein lokaler Sicherheitsprinzipal ist, kein tatsächlicher Benutzer. Daher müssen Sie den Bereich im Dialogfeld "Benutzer hinzufügen" verwenden, um ihn erfolgreich hinzufügen zu können.
  • Ändern Sie die lokale Sicherheitsrichtlinie des Computers ( secpol.msc), um anonyme Benutzer zur Gruppe "Jeder" hinzuzufügen (unter Lokale Richtlinien -> Sicherheitsoptionen -> Netzwerkzugriff: Alle Berechtigungen gelten für anonyme Benutzer).
  • Deaktivieren Sie die Firewall.
  • Konfigurieren Sie die DTC-Sicherheit und die COM-Sicherheit (auf die Sie über das Kontrollfeld "Komponentendienste" zugreifen), um den Netzwerkzugriff zu aktivieren und die Gruppe "Jeder" auch hier zu aktivieren.
  • Überprüfen Sie auch die Sicherheitsprotokolle auf Einträge, deren Zugriff verweigert wurde (obwohl ich keine Ahnung habe, unter welchem ​​Kontokontext sie protokolliert werden würden).
  • Wenn die Benutzerkontensteuerung auf Ihrem eigenen PC aktiviert ist, stellen Sie sicher, dass Sie die Anwendung als Administrator ausführen. Dies sollte für das Ziel keine Rolle spielen, aber Sie wissen es nie.

Wenn eines dieser Probleme Ihr Problem löst, müssen Sie lediglich herausfinden, welche Sicherheitsinformationen für das Ziel bereitgestellt werden, und sicherstellen, dass das Konto über die erforderlichen Berechtigungen verfügt.

Ich hatte noch keine Zeit, um Ihre Vorschläge auf die Probe zu stellen, aber die Prämie läuft bald ab und Sie waren der Einzige, der sich die Mühe gemacht hat zu antworten, also los geht's ;-) JohnEye vor 7 Jahren 0