1

我想将 C# .NET 应用程序连接到 PostgreSQL 数据库,使用带有客户端服务器身份验证的 TLS:换句话说,如果无法根据服务器的证书验证来自客户端的证书,则客户端应该被拒绝访问,如果客户端无法验证服务器的证书,客户端应立即中止连接。

我尝试使用 Npgsql 1.0 进行此操作,但在 Npgsql 中找不到任何方法来指定应用于连接的客户端证书。

我确实设法让客户端上的服务器证书验证正常工作,并且我也确实使用命令行 db 管理工具 psql 进行了所有验证工作,但这并没有帮助我进一步让它与 Npgsql 一起工作。

那么,如何使用 TLS 客户端和服务器身份验证将我的 .NET 应用程序连接到 PostgreSQL 数据库?

是否有支持此功能的更新/其他数据提供者?

实际上有没有人让这个以一种或另一种方式工作?

4

1 回答 1

1

尝试2.0 RC2版本- 它非常稳定。

(请注意,CVS 直到 2009 年才添加对服务器证书验证的支持。请参阅http://pgfoundry.org/tracker/?func=detail&atid=592&aid=1010558&group_id=1000140。我正在将其编辑到回复中,因为升级建议虽然为时过早,但却是正确的。)

于 2008-09-13T05:39:41.260 回答