2009-10-08 3 views
12

Ich erhalte den folgenden Fehler beim Versuch, eine Verbindung mit SQL Server 2005 über eine JDBC-Verbindung herzustellen.SSPI-Handshake mit Fehlercode 0x8009030c beim Herstellen einer Verbindung mit integrierter Sicherheit fehlgeschlagen

Error: 17806, Severity: 20, State: 2. 
Logon  SSPI handshake failed with error code 0x8009030c while establishing 
      a connection with integrated security; the connection has been 
      closed. [CLIENT: 127.0.0.1] 
Logon  Error: 18452, Severity: 14, State: 1. 
Logon  Login failed for user ''. The user is not associated with a trusted 
      SQL Server connection. [CLIENT: 127.0.0.1] 

MY Verbindung URL:

jdbc:sqlserver://LOCALHOST:1433;DatabaseName=master;integratedSecurity=true 
+0

Ich habe das gleiche Problem mit dem JTDS JDBC-Treiber (von einem Windows-Rechner zu einem anderen Windows-Rechner beide auf der gleichen Domain). Ich habe noch keine Lösung gefunden. Der beste Rat, den ich bis jetzt gehört habe, ist "etwas stimmt nicht mit AD". –

+0

Dieser Fehler tritt zu 100% auf, wenn Sie versuchen, den SQL Server mit integrierter Sicherheit anzumelden, der aktuelle Sicherheitskontext jedoch von einer anderen Domäne stammt (nicht vertrauenswürdig ist) oder lokal auf dem Clientcomputer protokolliert wird. – wqw

Antwort

0

Hat die gleiche genaue Nachricht mit diesem 0x8009030c Code.

In meinem Fall hatte der Benutzer keinen Zugriff auf den SQL-Computer aus dem Netzwerk, und ich hatte eine Fehlermeldung, die darauf hinweist (ich denke, die gleiche Nachricht passiert auch in anderen Fällen).

Gehe zu: Lokale Sicherheitsrichtlinie -> Sicherheitseinstellungen -> Lokale Richtlinien -> Zuweisen von Benutzerrechten -> auf diesen Computer aus dem Netzwerk -> fügen Sie den Benutzer

Es das Problem behoben

16

Der Schlüssel Für dieses Problem besteht für mich zumindest die Tatsache, dass die Verbindung zu SQL Server über die Loopback-Schnittstelle (127.0.0.1) hergestellt wird. Ich hatte die gleichen Symptome und fand die Antwort in this blog post.

Zusammengefasst: Es findet eine Loopback-Prüfung statt, die dazu führt, dass vertrauenswürdige Verbindungen über den Loopback-Adapter fehlschlagen. Diese Überprüfung kann durch Hinzufügen eines Registrierungseintrags wie folgt entfernt werden:

  1. Bearbeiten Sie die Registrierung mit Regedit. (Start -> Ausführen ... Regedit)
  2. Wechseln Sie zu: HKLM \ System \ CurrentControlSet \ Control \ LSA
  3. einen DWORD-Wert hinzufügen namens „DisableLoopbackCheck“
  4. diesen Wert auf 1

ich neu gestartet nachdem Sie diese Änderung vorgenommen haben, nur um sicher zu sein, aber Sie werden feststellen, dass dies nicht notwendig ist. Nachdem diese Änderung der Registrierung vorgenommen wurde, konnte ich über den Loopback-Adapter vertrauenswürdige Verbindungen herstellen.

Kudos an die Blackhawk Consulting Blog für mich in dieser Frage in die richtige Richtung zeigen.

+2

Ich habe den gleichen Fehler über das Netzwerk.Es ist also nicht notwendig, 127.0.0.1 zu verwenden. – Tagar

+0

Vielen Dank für diese Antwort. Ich habe versucht, dies seit über einem Monat mit Erfolg zu beheben. Stolperte über diesen SO Post und es behob mein Problem. –

6

Ich hatte auch dieses Problem, und die Ursache war einfach: das Passwort meines Domain-Benutzers war abgelaufen, so dass die Anmeldeinformationen widerrufen wurden.

Wie es passierte, hatte ich auch SQL Management Studio geöffnet, so dass es alle 2-3 Minuten Fehler wie diese generierte, bis ich mein Domänenpasswort änderte.

0

Mit Microsofts Err.exe

C:\>err 0x8009030c 
# for hex 0x8009030c/decimal -2146893044 : 
    SEC_E_LOGON_DENIED           winerror.h 
# The logon attempt failed 
# 1 matches found for "0x8009030c" 

A DC wird eine Anmeldung aus vielen verschiedenen Gründen, einschließlich intermittierenden Verbindungsfehler zu einem DC verweigern.

Verwandte Themen