2016-05-27 7 views
0

Ich versuche, Verbindung zu firebird 3.0 durch neueste Version von ADO.NET provider 5.0.5.0 von meinem einfachen Test .net-Anwendung. Wenn ich verwendet sysdba Benutzerverbindung ist OK gemacht, aber wenn ich andere Benutzer verwendet dann mit klassischen FBException Verbindung fehlgeschlagen:Firebird ADO.NET-Provider 5.0.5.0 zu Firebird 3.0 kann keine Verbindung außer sysdba

Your user name and password are not defined. Ask your database administrator to set up a Firebird login. 

"initial catalog=c:\\Database\\Data.fdb;data source=localhost;user id=sysdba;password=sysPass;port number=3050" = OK

"initial catalog=c:\\Database\\Data.fdb;data source=localhost;user id=michal;password=micPass;port number=3050" =

fehlgeschlagen

Aber wenn ich verbinde ich versuche, durch IBExpert oder isql, dann ist die Verbindung OK und ich kann Daten von Tabellen bekommen.

Früher verwendete ich Firebird 2.1 und dann ein Upgrade i 3.0 Superclassic Firebird und ADO.NET provieder von nuget.Actually bekomme ich SRP ecryption nicht brauchen, damit ich deaktiviert WireCrypt usw. und Legacy-Authentifizierung verwenden (Firebird 3.0 release notes Seite 117). Dann habe ich meinen neuen Benutzer über IBExpert erstellt (sysdba wurde während der Installation von Firebird Server erstellt).

Ich brauche nicht migrieren Benutzer von früheren Firebird-Version, damit ich die Schritte zum Upgrade einer v.2.x Security Database skipped.

Es ist seltsam, dass ich myUser über IBExpert oder Isql verbinden kann, aber nicht über ADO.NET-Provider.

Es scheint mir unwahrscheinlich, dass ADO.NET-Provider einen Bug dieses Typs hat (jeder benötigte Verbindung über Benutzer), also denke ich, dass ich eine schlechte Konfiguration habe.

+0

Versuchen Sie einen SRP-Benutzer zu verwenden, könnte ein Problem mit der neuen Authentifizierung Firebird .net Provider 5 hinzugefügt werden. –

+2

So ähnlich. Sie haben wahrscheinlich keine Übereinstimmung zwischen SRP-Authentifizierungs- und Legacy-Authentifizierungsbenutzern. Der Benutzer wird in einer und nicht in der anderen erstellt. BTW sollten Sie stark überdenken SRP nicht zu verwenden, keine gute Idee. –

+0

danke für deine Info. – Majkl

Antwort

0

Ich hatte einige schlechte Konfigurationen und ich muss richtig eingestellt:

1, firebird.conf, dort zu sein haben: WireCrypt = Enabled (nicht deaktiviert)

2, Benutzer erstellen ältere Weise Konto (in meinem Fall über IBExpert)

3, Das Passwort muss max. Länge 8 Zeichen (zuvor können Sie mehr Zeichen haben und Firebird ist weglassen)