Domänenübergreifendes Remotedebuggen
Aktualisiert: November 2007
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Express |
||||
Standard |
||||
Pro und Team |
Tabellenlegende:
Vorhanden |
|
Nicht vorhanden |
|
Befehl oder Befehle, die standardmäßig ausgeblendet sind. |
Beim Remotedebuggen findet eine bidirektionale Kommunikation zwischen dem Visual Studio 2005-Debugger und dem Remotedebugmonitor (msvsmon.exe) statt. Deshalb ist es für das Funktionieren des Remotedebuggens von Bedeutung, welcher Benutzer Visual Studio und welcher Benutzer msvsmon.exe ausführt.
Um eine Verbindung mit msvsmon herstellen zu können, muss Visual Studio als derselbe Benutzer ausgeführt werden wie msvsmon oder aber als Administrator. (Sie können msvsmon auch so konfigurieren, dass Verbindungen von anderen Benutzern akzeptiert werden.)
Visual Studio akzeptiert Verbindungen von msvsmon, wenn msvsmon als Benutzer ausgeführt wird, der auf dem Visual Studio-Computer authentifiziert werden kann. (Der Benutzer muss ein lokales Konto auf dem Visual Studio-Computer haben.)
Mit diesen Einschränkungen arbeitet Remotedebuggen in verschiedenen Szenarios, z. B. folgenden:
Zwei Domänen ohne bidirektionale Vertrauenswürdigkeit
Zwei Computer in einer Arbeitsgruppe
Ein Computer in einer Arbeitsgruppe und der andere in einer Domäne
Den Remotedebugmonitor (msvsmon) oder Visual Studio als lokales Konto ausführen
Sie benötigen dafür auf beiden Computern ein lokales Benutzerkonto mit identischem Benutzernamen und -kennwort. Wenn Sie msvsmon unter einem anderen Benutzer ausführen müssen als Visual Studio, benötigen Sie auf jedem Computer zwei Benutzerkonten.
Ein Domänenkonto kann einem lokalen Konto zugeordnet sein. Deshalb können Sie Visual Studio als Domänenkonto ausführen, wenn auf beiden Computern ein lokales Benutzerkonto mit dem Benutzernamen und Kennwort des Domänenkontos vorhanden ist.
Bei Computern unter Windows XP Professional in einer Arbeitsgruppe könnte die lokale Sicherheitseinstellung das Remotedebuggen verhindern. Die Richtlinie muss für das Remotedebuggen auf Klassisch festgelegt sein. (Dies betrifft nicht Computer unter Windows 2000 oder Server 2003 oder Windows XP-Computer, die zu einer Domäne gehören.)
So ändern Sie die Sicherheitsrichtlinie, um Remotedebuggen zwischen Domänen zu ermöglichen (Windows XP Professional)
Wählen Sie auf dem lokalen Computer im Menü Start die Systemsteuerung aus.
Doppelklicken Sie in der Systemsteuerung auf Verwaltung.
Doppelklicken Sie im Fenster Verwaltung auf Lokale Sicherheitsrichtlinie.
Öffnen Sie unter Sicherheitseinstellungen den Ordner Lokale Richtlinien.
Wählen Sie im Ordner Lokale Richtlinien die Option Sicherheitsoptionen.
Suchen Sie in der Spalte Richtlinie die Option Netzwerkzugriff: Modell für gemeinsame Nutzung und Sicherheitsmodell für lokale Konten, und doppelklicken Sie darauf.
Ändern Sie im Dialogfeld Netzwerkzugriff: Modell für gemeinsame Nutzung und Sicherheitsmodell für lokale Konten die Einstellung von Nur Gast - lokale Benutzer authentifizieren sich als Gast zu Klassisch - lokale Benutzer authentifizieren sich als sie selbst, und klicken Sie auf OK.
Schließen Sie das Fenster, und starten Sie den Computer neu.
Wiederholen Sie die Schritte 1 bis 8 auf dem Remotecomputer.
Jetzt wird das Remotedebuggen unter Verwendung desselben Benutzernamens auf beiden Computern unterstützt.
Vorsicht: Das Ändern des Sicherheitsmodells in Klassisch kann zu unerwünschtem Zugriff auf freigegebene Dateien und DCOM-Komponenten führen. Wenn Sie diese Änderung vornehmen, kann sich ein Remotebenutzer mit Ihrem lokalen Benutzerkonto anstatt als Gast authentifizieren. Wenn ein Remotebenutzer Ihren Benutzernamen und Ihr Kennwort angibt, kann dieser Benutzer auf alle von Ihnen freigegebenen Ordner und DCOM-Objekte zugreifen. Um nicht autorisierte Zugriffe bei der Verwendung dieses Sicherheitsmodells zu vermeiden, sollten Sie dafür sorgen, dass alle Benutzerkonten auf dem Computer über sichere Kennwörter verfügen, oder richten Sie einen isolierten Netzwerkabschnitt für zu debuggende Computer und die Computer ein, auf denen das Debuggen ausgeführt wird.