MSDTC fehlschlägt, um sich gegenseitig authentifizieren, wenn Computer nicht im derselben Domäne ausgeführt werden

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 827805 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Wenn zwei Computer, die nicht in derselben Domäne ausgeführt werden Microsoft Distributed Transaction Coordinator (MSDTC) für die Kommunikation und verteilte Transaktionen verwenden, kann die gegenseitige Authentifizierung fehlschlagen.

Wenn Sie eine verteilte Transaktion für einen Verbindungsserver in Microsoft SQL Server 2000 auf einem Computer, auf dem Microsoft Windows Server 2003 Enterprise Edition ausgeführt wird ausführen, erhalten Sie folgende Fehlermeldung:
Server: Msg 7391, Ebene 16, Status 1, Zeile 2
Der Vorgang konnte nicht durchgeführt werden, da der OLE DB-Provider 'SQLOLEDB' keine verteilte Transaktion beginnen konnte. OLE-DB-Provider meldete: neue Transaktion kann im angegebenen Transaktionskoordinator nicht eingetragen.

Ursache

Der MSDTC-Proxy kann nicht ordnungsgemäß MSDTC authentifizieren, wenn die kommunizierenden Computer nicht in derselben Domäne befinden.

Abhilfe

wichtig In diesem Abschnitt, Methode oder Aufgabe enthält Hinweise zum Ändern der Registrierung. Allerdings können schwerwiegende Probleme auftreten, wenn Sie die Registrierung falsch ändern. Stellen Sie daher sicher, dass Sie diese Schritte sorgfältig ausführen. Für zusätzlichen Schutz sichern Sie der Registrierung, bevor Sie ihn ändern. Anschließend können Sie die Registrierung wiederherstellen, wenn ein Problem auftritt. Weitere Informationen zum Sichern und Wiederherstellen der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
322756Zum Sichern und Wiederherstellen der Registrierung in Windows


Weitere Informationen zum Bearbeiten der Registrierung Hilfethema "Ändern von Schlüsseln und Werten" in Registrierungs-Editor (Regedit.exe) oder in den Hilfethemen "Hinzufügen und Löschen von Informationen in der Registrierung" und "Bearbeiten der Registrierungsdaten" in Regedt32.exe. Sie sollten eine Sicherungskopie der Registrierung erstellen, bevor Sie die Registrierung bearbeiten.

Um dieses Problem zu umgehen, deaktivieren Sie die RPC-Sicherheit auf Ihrem Windows Server 2003-Computern. RPC-Sicherheit ist ein neuer DTC-Feature in Windows Server 2003. Wenn Sie RPC-Sicherheit der DTC deaktivieren Authentifizierung Sicherheitsstufe für Remoteprozeduraufrufe wechselt zu einer Ebene, die in Microsoft Windows 2000 Server verfügbar ist. Gehen Sie dazu folgendermaßen vor um den DWORD-Wert für den TurnOffRpcSecurity Registrierungswert auf 1 festgelegt:
  1. Starten Sie den Registrierungseditor (Regedt32.exe).
  2. Suchen Sie folgenden Schlüssel in der Registrierung:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
  3. Klicken Sie im Menü Bearbeiten auf Hinzufügen Wert , und fügen Sie dann den folgenden Registrierungswert hinzu:
    Tabelle minimierenTabelle vergrößern
    WertnameTypWert
    TurnOffRpcSecurityREG_DWORD1
  4. Beenden Sie den Registrierungseditor.
Hinweis: Nachdem Sie Windows Server 2003 Service Pack 1 installiert haben, wird der Registrierungseintrag TurnOffRpcSecurity auf 0 festgelegt. Sie müssen den Wert auf 1 mithilfe des Registrierungseditors vor dem Neustart des Computers wiederherzustellen.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Weitere Informationen

Schritte zum Reproduzieren des Verhaltens

  1. Stellen Sie sicher, dass beide Computer auf Windows Server 2003 ausgeführt werden.
  2. Installieren Sie SQL Server 2000 mit Service Pack 3 (SP3), auf den beiden Computern.
  3. Stellen Sie sicher, dass MSDTC auf dem Computer gestartet wird.
  4. Auf dem ersten Computer starten Sie den SQL Query Analyzer (Isqlw.exe) (Dienstprogramm), und dann eine Verbindung zu der lokalen SQL Server herzustellen.
  5. Fügen Sie den zweiten Computer als Verbindungsserver hinzu. Führen Sie hierzu die folgende Transact-SQL-Anweisung in SQL Query Analyzer:
    EXEC sp_addlinkedserver  'remote_server',  N'SQL SERVER'
    GO
    Hinweis ersetzen remote_server mit dem Namen der dem zweiten Computer.
  6. Führen Sie die folgende Transact-SQL-Anweisung in SQL Query Analyzer:
    SET xact_abort ON 
    GO
    USE  pubs
    GO
    BEGIN DISTRIBUTED TRANSACTION
    SELECT  *  FROM remote_server.pubs.dbo.authors
    COMMIT TRAN
    GO
    
    erhalten Sie unter Fehlermeldung die im "Problembeschreibung" erwähnte Abschnitt dieses Artikels.
Weitere Informationen finden Sie im folgenden Artikel der Microsoft Knowledge Base:
329332Sie erhalten Fehler 7391 beim Ausführen einer verteilten Transaktion für einen Verbindungsserver
Weitere Informationen zu Microsoft COM+ 1.5 der folgenden Microsoft Developer Network (MSDN)-Website:
http://msdn2.microsoft.com/en-us/library/ms687608.aspx

Eigenschaften

Artikel-ID: 827805 - Geändert am: Mittwoch, 5. Dezember 2007 - Version: 4.7
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft COM+ 1.5
Keywords: 
kbmt kbinfo kbtshoot kbtransaction kbsecurity kbrpc kbauthentication kbdtc kbdomain KB827805 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 827805
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com