簡単なテスト .net アプリケーションからのfirebird 3.0
最新バージョンに接続しようとしています。ADO.NET provider 5.0.5.0
私がsysdbaユーザーを使用した場合、接続はOKですが、他のユーザーを使用した場合、従来の 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"
= 失敗
しかし、 IBExpert または isql を介して接続しようとしている場合、接続は正常に行われ、テーブルからデータを取得できます。
以前は Firebird 2.1 を使用していましたが、Firebird 3.0 スーパークラシックにアップグレードし、nuget から ADO.NET プロバイダーを取得しました。実際には SRP 暗号化は必要ないため、WireCrypt などを無効にしてレガシー認証を使用しました ( Firebird 3.0 リリース ノート 117 ページ)。次に、IBExpert を介して新しいユーザーを作成しました (firebird サーバーのインストール中に sysdba が作成されました)。
以前の firebird バージョンからユーザーを移行する必要がないため、v.2.x セキュリティ データベースのアップグレードの手順をスキップしました。
IBExpert または isql を介して myUser に接続できるのに、ADO.NET プロバイダーを介して接続できないのは奇妙です。
ADO.NET プロバイダーにこのタイプのバグ (すべてのユーザーがユーザー経由で接続する必要がある) がある可能性は低いと思われるので、構成が悪いと思います。