由于缺少SSL加密,连接SQL Azure数据库失败

本文关键字:SQL Azure 数据库 失败 连接 于缺少 SSL 加密 | 更新日期: 2023-09-27 17:51:02

我正在学习ASP。. NET 5 (vNext)在我的Mac上。最后一天,我一直在试图连接到我的SQL Azure数据库。在这个尝试中,我一直在使用以下代码:

var serverName = "[protected]";
var dbName = "[protected]";
var userId = "[protected]";
var password = "[protected]";
var sql = "SELECT * FROM Customer";
using (var database = new SqlConnection("Server=tcp." + serverName + ".database.windows.net,1433;Database=" + dbName + ";User Id=" + userId + ";Password=" + password + ";Trusted_Connection=False;Encrypt=True;Max Pool Size=25"))
{
  database.Open();
  return await database.QueryAsync<T>(sql);                     
}

当执行此代码时,将抛出异常。异常细节如下所示:

类型:
系统。NotImplementedException

信息:
客户端和服务器之间发送的数据未实现SSL加密。

我了解到,目前在Mac OS X上运行的框架不支持加密。因此,我将连接字符串更新为如下所示:

var connectionString = "Persist Security Info=False;Integrated Security=true;Initial Catalog=" + dbName + ";server=" + serverName + ";User Id=" + userId + ";Password=" + password;

但是,当我使用上面的连接字符串时,我得到以下错误:

类型:
System.Data.SqlClient.SqlException

信息:
服务器不存在或连接被拒绝。

我已经确认我的IP地址没有被Azure封锁。我通过登录到Azure门户和从Silverlight应用程序管理SQL Server数据库做到了这一点。然而,我仍然不确定为什么我得到这个错误。

如果我理解正确,没有办法连接到SQL Azure数据库在这个时候从ASP。NET 5在Mac上运行,是真的吗?如果这不是真的,我做错了什么?

由于缺少SSL加密,连接SQL Azure数据库失败

正如你所知道的,Mac上的vNext是在公开预览中。
我们仍在努力提供SQL连接。Mac上还不支持SSL加密,Azure SQL DB需要SSL加密。该项目正在筹备中,我们会让你知道,一旦我们有东西要分享。同时,如果您还有什么问题,请告诉我。

最好的,
Bhagdev见面
程序管理器,Microsoft

切换到使用mono作为构建目标。这将使您能够访问实体框架中的ssl。

我知道这不是你要找的答案,但是SQL Azure 要求 SSL per https://msdn.microsoft.com/en-us/library/azure/ff394108.aspx.

我很确定你被卡住了,直到SSL支持被添加到OS X(通过Mono或CoreCLR)。