使用 pem 文件、用户名和密码连接到 SQL 服务器

Connect to SQL Server using a pem file, username and password

我有一个 SQL 服务器(这是一个 Google 云 SQL 服务器)。与它的连接需要使用用户名和密码进行 ssl 加密和身份验证。

我可以获得 ssl 证书的 .pem 文件:

我还有服务器的用户名,密码,ip。在 SqlClient connection string syntax 中,我能够找到定义用户名 (uid)、密码 (pwd) 和 ip(数据源)的标志。但是我找不到如何放置 .pem 文件。

.pem 文件不属于连接字符串吗?如果可以,我该如何使用它?

谢谢,
尼姆罗德

编辑:我尝试打开与 trustServerCertificate=true 的连接,但仍然得到 error: 40 - Could not open a connection to SQL Server

解决方案:
SSL 不是问题。添加 TrustServerCertificate 和 Encrypt 标志应该允许 SSL。使用这些标志,客户端只需接受来自服务器的任何证书,并继续进行 SSL 握手。
我的问题是我没有将客户端网络添加到云 SQL 的受信任网络列表中。这显然是一项要求,即使云 SQL 为我们设置了 public IP。我将 0.0.0.0/0 网络添加为可信网络,并且连接正常。

Does the .pem file not belong in the connection string?

没有

客户端要求使用Encryptconnection string option进行协议加密。如果客户端不信任服务器的证书,则需要在客户端上安装证书或在连接字符串中选择 TrustServerCertificate