2016-01-05 39 views
1

在我的本地计算机中,我正在运行SSIS包以每隔一小时将数据传输到Azure数据库。我如何确保我的SSIS使用SSL传输数据。我经历了各种在线教程和SO帖子,但没有找到如何确认SSL正在使用。 MS Azure教程建议在连接字符串中使用Encrypt=TrueTrustServerCertificate=False如何确保SSIS使用SSL将数据传输到Azure数据库

我对OLE DB destitaion(天青)连接字符串

Data Source=tcp:AAAAAA.database.windows.net,1433; User [email protected];  
Initial Catalog=testdb; Persist Security Info=True; Encrypt=True;  
TrustServerCertificate=False; Application Name=SSIS-Package-BBBBB; 

如何理解正在使用SSL?我必须在本地计算机上安装任何证书吗?

+0

在引用的副本中,托尼Petrossian - 在MS工作,表示“Azure SQL数据库的所有连接都默认加密并且未加密连接被拒绝” – billinkc

+0

在SSIS OLE DB连接中,即使我提供Encrypt = FALSE和TrustServerCertificate = TRUE,数据传输没有任何错误。为什么连接不被Azure拒绝? –

+0

因为您信任服务器证书,我相信这是使用服务器证书来加密数据(与安全人员核对以确认)。这[Azure文章](https://azure.microsoft.com/en-us/documentation/articles/sql-database-security/)表示不建议信任服务器证书 – billinkc

回答

0

Encrypt=True使用SSL时。来自:https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring%28v=vs.110%29.aspx

如果服务器安装了证书,则SQL Server对客户端和服务器之间发送的所有数据使用SSL加密。公认的价值观是真实的,虚假的,是的,没有。有关更多信息,请参阅连接字符串语法。

从.NET Framework 4.5开始,当TrustServerCertificate为false且Encrypt为true时,SQL Server SSL证书中的服务器名称(或IP地址)必须与连接字符串中指定的服务器名称(或IP地址)完全匹配。否则,连接尝试将失败。有关支持主题以通配符(*)开头的证书的信息,请参阅服务器证书用于服务器身份验证的接受通配符。

如果您想仔细检查,可以使用Wireshark观察网络流量。

相关问题