火鸟ADO.NET提供程序5.0.5.0到Firebird 3.0除了sysdba之外无法连接



我正在尝试从我的简单test.net应用程序通过最新版本的ADO.NET provider 5.0.5.0连接到firebird 3.0。当我使用sysdba时,用户连接正常,但如果我使用其他用户,则连接失败,出现经典的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"=正常

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

但如果我尝试通过IBExpert或isql进行连接,那么连接就可以了,我可以从表中获取数据。

之前我使用Firebird 2.1,然后我升级到Firebird 3.0超级经典并获得ADO。NET提供程序。事实上,我不需要SRP加密,所以我禁用了WireCrypt等,并使用Legacy身份验证(Firebird 3.0发行说明第117页)。然后我通过IBExpert创建了我的新用户(sysdba是在安装firebird服务器的过程中创建的)。

我不需要从以前的firebird版本迁移用户,所以我跳过了升级v.2.x安全数据库的步骤。

奇怪的是,我可以通过IBExpert或isql连接myUser,但不能通过ADO连接。NET提供程序。

在我看来,ADO。NET提供程序有这种类型的错误(每个人都需要通过用户连接),所以我想我的配置不好。

我有一些糟糕的配置,我需要正确设置:

  1. 在firebird.conf中,必须有:WireCrypt = Enabled(未禁用)

  2. 创建用户帐户旧的方式(在我的情况下通过IBExpert)

  3. 密码的最大长度为8个字符(以前你可以有更多的字符,Firebird被省略)

相关内容

最新更新