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

Connecting to SQL Azure Database fails due to missing SSL encryption

我正在 Mac 上学习 ASP.NET 5 (vNext)。最后一天,我一直在尝试连接到我的 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);                     
}

执行这段代码时,会抛出一个异常。异常详细信息如下所示:

Type:
System.NotImplementedException

Message:
SSL encryption for data sent between client and server is not implemented.

更新 我这时候在MacOSX上了解到框架运行中的加密isn't supported。因此,我将连接字符串更新为如下所示:

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

仍然,当我使用上面的连接字符串时,出现以下错误。

Type:
System.Data.SqlClient.SqlException

Message:
Server does not exist or connection refused.

我已确认我的 IP 地址未被 Azure 阻止。为此,我登录到 Azure 门户并从 Silverlight 应用程序管理 SQL 服务器数据库。但是,我仍然不确定为什么会收到此错误。

如果我理解正确,目前无​​法从 ASP.NET 5 运行 连接到 SQL Azure 数据库 Mac .真的吗?如果不是真的,我做错了什么?

我知道这不是您要找的答案,但是 SQLAzure 需要 SSL https://msdn.microsoft.com/en-us/library/azure/ff394108.aspx.

我很确定在将 SSL 支持添加到 OS X(通过 Mono 或 CoreCLR)之前,您会遇到困难。

如您所知,Mac 上的 vNext 正在 public 预览中。
我们仍在努力提供 SQL 连接。 Mac 尚不支持 SSL 加密,而 Azure SQL 数据库需要一个。该项目正在筹备中,一旦我们有什么要分享的,我们会通知您。
在此期间,如果您有任何其他问题,请告诉我。

最好的,
认识 Bhagdev
微软项目经理

切换到使用单声道作为构建目标。这应该使您可以访问 entity framework.

中的 ssl