Anmeldung bei SQL Server + SQL Server-Authentifizierung + Fehler nicht möglich: 18456

Ich habe ein Anmeldekonto auf meinem localhost\sql2008 Server erstellt (z.B. User123)

Auf Datenbank abgebildet (Standard)

Der Authentifizierungsmodus auf dem SQL-Server ist auf beides eingestellt (Windows und SQL)

Die Anmeldung bei SQL Server schlägt jedoch mit folgender Meldung fehl (für Benutzer123)

Hinweis: Ich habe mehrfach überprüft, ob Benutzername und Kennwort korrekt eingegeben wurden.

Fehler-Details:

Anmeldung für Benutzer 'User123&#39 fehlgeschlagen;

(Net.SqlClient Data Provider)

Server Name : localhost\sql2008 Fehler Nummer: 18456 Schweregrad : 14 Zustand : 1 Zeilennummer : 65536

jede Hilfe zu diesem bitte.

Sie müssen die SQL Server-Authentifizierung aktivieren:

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf den Server und klicken Sie auf "Eigenschaften"

  1. Im Fenster "Servereigenschaften" klicken Sie auf "Sicherheit" in der Liste der Seiten auf der linken Seite. Wählen Sie unter "Serverauthentifizierung" die Option "SQL Server und Windows-Authentifizierungsmodus" aus.

  1. Starten Sie den SQLEXPRESS-Dienst neu.
Kommentare (18)
Lösung

Die Fehlermeldung "Anmeldung fehlgeschlagen" bedeutet nichts anderes, als dass die Verbindung eines Client-Benutzers vom Server aufgrund einer Nichtübereinstimmung der Anmeldeinformationen abgelehnt wurde. Als Erstes sollten Sie prüfen, ob der Benutzer über die entsprechenden Berechtigungen auf der SQL Server-Instanz und der entsprechenden Datenbank verfügt. Wenn die erforderlichen Berechtigungen nicht gesetzt sind, müssen Sie das Problem beheben, indem Sie die entsprechenden Berechtigungen für die Benutzeranmeldung gewähren.

Auch wenn der Benutzer die entsprechenden Berechtigungen für die Datenbank und den Server hat, wenn der Server Probleme mit den Anmeldeinformationen für diese Anmeldung hat, wird er die Authentifizierung an den SQL Server verhindern und der Client wird die folgende Fehlermeldung erhalten:

Msg 18456, Level 14, State 1, Server , Line 1
Login failed for user ''

Wenn man sich die Fehlermeldung ansieht, hat man das Gefühl, dass sie nicht aussagekräftig genug ist, um den Level & Zustand zu verstehen. Standardmäßig zeigt das Betriebssystem Fehler 'Status' als 1 unabhängig von der Art der Probleme bei der Authentifizierung der Anmeldung. Um weitere Untersuchungen durchzuführen, müssen Sie auch das entsprechende Fehlerprotokoll der SQL Server-Instanz einsehen, um weitere Informationen über den Schweregrad und den Status dieses Fehlers zu erhalten. Sie könnten einen entsprechenden Eintrag im Protokoll als:

2007-05-17 00:12:00.34 Logon     Error: 18456, Severity: 14, State: 8.
or

2007-05-17 00:12:00.34 Logon     Login failed for user ''.

Wie oben definiert, sind die Spalten Severity & State auf dem Fehler der Schlüssel, um die genaue Reflexion für die Quelle des Problems zu finden. Die obige Fehlernummer 8 für den Status zeigt an, dass die Authentifizierung aufgrund eines nicht übereinstimmenden Passworts fehlgeschlagen ist. Bücher online bezieht: Benutzerdefinierte Meldungen mit einem Schweregrad von weniger als 19 werden standardmäßig nicht an das Microsoft Windows-Anwendungsprotokoll gesendet, wenn sie auftreten. Benutzerdefinierte Meldungen mit einem Schweregrad von weniger als 19 lösen daher keine SQL Server Agent-Warnungen aus.

Sung Lee, Program Manager in SQL Server Protocols (Dev.team), hat weitere Informationen zur Beschreibung von Fehlerzuständen zusammengestellt: Die häufigsten Fehlerzustände und ihre Beschreibungen finden Sie in der folgenden Tabelle:

ERROR STATE       ERROR DESCRIPTION
------------------------------------------------------------------------------
2 and 5           Invalid userid
6                 Attempt to use a Windows login name with SQL Authentication
7                 Login disabled and password mismatch
8                 Password mismatch
9                 Invalid password
11 and 12         Valid login but server access failure
13                SQL Server service paused
18                Change password required

Well I'm not finished yet, what would you do in case of error:

2007-05-17 00:12:00.34 Logon     Login failed for user ''.

Wie Sie sehen können, ist im Fehlerprotokoll dieser SQL Server-Instanz keine Schwere- oder Zustandsstufe definiert. Die nächste Option zur Fehlerbehebung ist also ein Blick in das Sicherheitsprotokoll der Ereignisanzeige [Bearbeiten, da der Screenshot fehlt, aber Sie erhalten das

Idee, suchen Sie im Ereignisprotokoll nach interessanten Ereignissen].

Kommentare (9)

Ich hatte das gleiche Problem, aber meins war, weil ich nicht die Server-Authentifizierung auf "SQL Server und Windows-Authentifizierungsmodus" (die Sie hatten) Ich wollte nur hier zu erwähnen, falls jemand es in Ihrer Frage verpasst.

Sie können darauf zugreifen, indem Sie

  • Rechtsklick auf die Instanz (IE SQLServer2008)
  • Wählen Sie "Eigenschaften"
  • Wählen Sie die Option "Sicherheit".
  • Ändern Sie "Server-Authentifizierung" auf "SQL Server und Windows-Authentifizierungsmodus"
  • Starten Sie den SQLServer-Dienst neu
  • Klicken Sie mit der rechten Maustaste auf die Instanz
  • Klicken Sie auf "Neustart"
Kommentare (2)