0

I am trying connect to firebird 3.0 throught latest version of ADO.NET provider 5.0.5.0 from my simple test .net application. When i used sysdba user connection is made OK, but if i used other user then connection failed with classic FBException :

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" = failed

But if i am trying connect throught IBExpert or isql , then connection is made OK and i can get data from tables.

Previously i used Firebird 2.1 and then i upgraded to Firebird 3.0 superclassic and get ADO.NET provieder from nuget.Actually i do not need SRP ecryption so I disabled WireCrypt etc. and use Legacy authentication (Firebird 3.0 release notes page 117). Then i created my new user via IBExpert (sysdba was created during installation firebird server).

I do not need migrate users from previous firebird version so I skiped Upgrading a v.2.x Security Database steps.

It is strange that i can connect myUser via IBExpert or isql, but not via ADO.NET provider.

It seems to me unlikely that ADO.NET provider has bug of this type (everyone needed connect via user), so I guess that i have some bad configuration.

Majkl
  • 767
  • 1
  • 8
  • 24
  • Try to use a SRP user, there might be a problem with the new authentication added to Firebird .net provider 5. – Mark Rotteveel May 27 '16 at 07:07
  • 2
    Something like that. You probably have mismatch between SRP auth and legacy auth users. The user is created in one and not in the other. BTW you should strongly reconsider not using SRP, not a good idea. – cincura.net May 28 '16 at 09:58
  • Test against Firebird 3.01 configured as: AuthServer = Legacy_Auth, Srp AuthClient = Legacy_Auth, Srp UserManager = Legacy_UserManager, Srp WireCrypt = Enabled ServerMode = Classic CREATE USER USR_LEG PASSWORD 'PASLEG11' USING PLUGIN Legacy_UserManager; CREATE USER USR_SRP PASSWORD 'PASSRP22' USING PLUGIN Srp; User USR_LEG is working with FirebirdClient 4.10 and below User USR_SRP is working with FirebirdClient 5.10 and above – BennyBechDk Feb 22 '19 at 13:00
  • Made a bugreport on my issue: http://tracker.firebirdsql.org/browse/DNET-872 – BennyBechDk Mar 05 '19 at 09:00

1 Answers1

0

I had some bad configurations and I need set correctly:

  1. In firebird.conf, there has to be: WireCrypt = Enabled (not disabled)

  2. Create user account older way (in my case via IBExpert)

  3. The password have to max. length 8 chars (previously you can have more chars and Firebird is omit)

Mark Rotteveel
  • 82,132
  • 136
  • 114
  • 158
Majkl
  • 767
  • 1
  • 8
  • 24
  • The new SRP authentication mechanism of Firebird 3 supports passwords longer than 8 characters, the old mechanism only supported 8 characters (and silently ignored the rest). – Mark Rotteveel Feb 27 '21 at 07:39