使用 Firebird ado.net 提供程序在客户端和服务器上请求的不兼容的有线加密级别

Incompatible wire encryption levels requested on client and server with Firebird ado.net provider

我正在使用 C# 测试连接 firebird 3。我用的是最新的版本:Firebird ADO.NET Provider 5.0.但是当您建立连接时,出现错误 "Incompatible wire encryption levels requested on client and server"。”

在“”,有一些关于在遗留模型中启用身份验证或创建遗留用户的建议。

但我的问题是是否真的不支持 Net Provider 5.0 版中的新 SRP 身份验证模型?

问题与SRP本身无关,Firebird .NET provider version 5.0.0.0只是增加了SRP支持,还没有实现有线协议加密。此有线协议加密确实 - 默认情况下 - 依赖于 SRP 作为其会话密钥,但实施 SRP 的事实并不意味着实施了有线协议加密。

默认情况下,Firebird 3 需要加密,但由于 Firebird .NET 提供程序版本 6 及更早版本不支持加密,因此您会收到错误 "Incompatible wire encryption levels requested on client and server"

要能够使用有线加密,您需要更新到 Firebird ADO.net 提供程序版本 7。版本 7 添加了对有线加密的支持,请参阅 ADO.NET provider 7.0.0.0 for Firebird is ready 了解更多信息。

或者,您需要通过编辑 firebird.conf:

配置 Firebird 3 以启用但不需要加密
WireCrypt = Enabled

然后重启 Firebird。