SQL Azure部署安全问题

时间:2013-11-04 22:18:36

标签: sql security azure

我们正在开发一个使用Windows Azure云服务和SQL Azure数据库的应用程序。我们有一个ASP .NET MVC项目,它使用数据库优先在Visual Studio解决方案中创建实体。现在我们需要将数据库架构部署到Azure。

目前这是不可能的,因为我们的网络阻止端口1433上的出站访问,这是SQL Azure唯一可用的端口。我们已经要求我们的安全团队允许打开1433端口出站,但他们有一些顾虑:

  1. 在Microsoft的Internet防火墙上允许使用未加密的数据库流量(端口1433)。虽然数据库中没有敏感信息,但如果数据库凭据未加密并且可能导致污损风险,则管理凭证可能是明文形式。

  2. 在互联网防火墙上打开了哪些网络端口,用于访问托管网站和数据库的系统?

  3. 我认为第一个问题的关注点是管理Azure数据库的凭据将在部署期间未加密的端口1433上发送。对于第二个,我认为答案是我们可以配置端点来打开我们想要的云服务端口,但默认情况下它们是关闭的。

    我做了一些研究,但无法从微软的这些问题中找到任何明确的答案,这让我觉得我们提出了错误的问题。我会对那些比我有更多经验的人的见解感兴趣。

2 个答案:

答案 0 :(得分:2)

SQL Azure仅根据安全指南和限制(Windows Azure SQL数据库)文章接受加密(SSL)通信:http://msdn.microsoft.com/en-us/library/windowsazure/ff394108.aspx

  

加密和证书验证之间的所有通信   Windows Azure SQL数据库和您的应用程序需要加密   (SSL)始终。如果您的客户端应用程序未验证   连接时的证书,您与Windows Azure SQL的连接   数据库容易受到中间人的影响。攻击。验证   带有应用程序代码或工具的证书,明确请求   加密连接,不信任服务器证书。如果你的   应用程序代码或工具不会请求加密连接   仍将收到加密连接。但是,他们可能不会   验证服务器证书,因此将容易受到人员的影响   在中间"攻击。使用ADO.NET验证证书   应用程序代码,设置Encrypt = True和TrustServerCertificate = False in   数据库连接字符串。有关更多信息,请参见如何:   使用ADO.NET连接到Windows Azure SQL数据库。 SQL Server   Management Studio还支持证书验证。在连接中   在“服务器”对话框中,单击“连接”上的“加密连接”   属性选项卡。 SQL Server Management Studio不支持Windows   SQL Server 2008 R2之前版本中的Azure SQL数据库。

SQL Azure使用1433和8443. Azure的端口要求可在此处获取:http://msdn.microsoft.com/en-us/library/windowsazure/jj136814.aspx

如果要限制与特定IP地址之间的防火墙流量,可以在此处获取Azure数据中心IP范围:http://msdn.microsoft.com/en-us/library/windowsazure/dn175718.aspx

答案 1 :(得分:0)

一些选项(除了DarrelNorton的回答): - 您可以使用专用的SQL Server VM,然后您可以使用端口转发,并且端口问题不是问题,您可以安装其他防火墙选项和其他安全软件 - 专用SQL VM允许您利用SQL Server中的TDE(Trans.Data Encryption),或者您可以执行SQL Azure DB中不可用的更高级加密技术 - 与其他MSFT客户端隔离的专用SQL VM。如果您被黑客入侵,可以从脚本中重新配置VM - 如果您担心安全性(VPN已加密),您可以在MSFT数据中心和本地网络之间使用虚拟网络连接