首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用C# .NET核心3中的SSL证书连接到MySQL数据库

问使用C# .NET核心3中的SSL证书连接到MySQL数据库
EN

Stack Overflow用户
提问于 2019-10-03 04:29:26
回答 2查看 1.8K关注 0票数 0

我正在尝试使用SSL连接到远程Mysql数据库。这个实现是在C#和dotnet core3中实现的。我写了一些代码,但似乎并不成功。任何帮助都将不胜感激。谢谢。

代码语言:javascript
复制
using System.Data;

using MySql.Data;
using MySql.Data.MySqlClient;

public class Tutorial1
{
    public static void Main()
    {
        MySqlConnection connection = new MySqlConnection( "database=your_databasename;user=your_username;" + "SslMode=VerifyFull;" + "SslCa=server-ca.pem;" + "SslCert=client-cert.pem;" +"SslKey=client-key.pem;");

        try
        {
            Console.WriteLine("Connecting to MySQL...");
            connection.Open();
            // Perform database operations
            Console.WriteLine("Connected to Dev DB");
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
        }
        connection.Close();
        Console.WriteLine("Done.");
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-04 22:21:16

所以,我想通了。显然,连接器/网络不能与.pem证书文件一起工作,因为一些错误。因此,解决方案是我们需要将.pem转换为.pfx,如下所示:

openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem -certfile cacert.pem -out client.pfx

这就是我从https://dev.mysql.com/doc/connector-net/en/connector-net-tutorials-ssl-pfx.html得到这个的地方

票数 0
EN

Stack Overflow用户

发布于 2019-10-03 12:09:22

当涉及到PEM处理时,Oracle的Connector/NET (又称MySql.Data)中有一个已知的bug:bug 95436。

尝试切换到MySqlConnector (NuGet)。它具有与连接器/网络相同的应用程序接口,因此它应该是一个插入式替代品,但具有更好的PEM文件处理能力和对.NET核心的更好支持。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58208957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档