【问题标题】:Securing SSMS connection and queries to SQL Azure DB from Man in the middle attack保护 SSMS 连接和从中间人攻击到 SQL Azure DB 的查询
【发布时间】:2017-07-24 23:13:00
【问题描述】:
场景:
我正在使用 SQL 管理工作室从我的笔记本电脑连接到我的 Azure SQL db(Paas) 实例。
- 我的查询和结果数据是否在此处传输时加密。我担心由于流量通过互联网,“中间人攻击”会发生在这里。
- 我还应该注意哪些其他安全问题/步骤?
到目前为止,我从互联网上了解到 Azure SQL Db 只允许加密连接,因此希望仔细检查我的发现,如果有人有好的答案,还可以了解更多。
【问题讨论】:
标签:
azure
security
azure-sql-database
ssms
man-in-the-middle
【解决方案1】:
我的查询和结果数据在此处传输时是否加密。
是的。来自这个link:
到 Azure SQL 数据库的所有连接都需要加密 (SSL/TLS)
数据在数据库“传输中”的所有时间。在你的
应用程序的连接字符串,您必须指定参数以
加密连接并且不信任服务器证书(这
如果您将连接字符串从 Azure 复制出来,则为您完成
Classic Portal),否则连接不会验证身份
并且容易受到“中间人”攻击。
例如,对于 ADO.NET 驱动程序,这些连接字符串
参数是 Encrypt=True 和 TrustServerCertificate=False。
我还应该注意哪些其他安全问题/步骤?
并非专门针对中间人攻击,但您应该考虑正确设置Firewall Rules,以便仅来自特定 IP 地址的用户可以访问您的数据库。
我强烈建议阅读此文档以保护对 Azure SQL 数据库的访问:https://docs.microsoft.com/en-us/azure/sql-database/sql-database-security-overview。
【解决方案2】:
保护与 Azure SQL 数据库的连接有 3 个要素。
- 加密连接(默认)
- 允许的 IP。在 azure SQL 中,您会自动获得一个防火墙
您必须配置为允许从 Internet 访问。确保
您只是在配置访问所需的 IP。
- DNS 解析。确保您使用的是安全/受信任的 DNS
服务器将地址解析到正确的位置