1

Azure SQL 的网络安全设置

 2 years ago
source link: https://zhuanlan.zhihu.com/p/461549861
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Azure SQL 的网络安全设置

计算机图形学话题下的优秀答主

本文小结了用于Azure SQL的网络安全设置相关的最佳实践和选择。

首先,让我们来看一个Azure SQL常见的使用情景。

v2-ae5c52d8ac74f619cae94def1f39e092_720w.jpg常见情景

我们在不同的Azure区域中设置了3台虚拟机(VM)并为其设置了相应的虚拟网络(VNET),如上图所示。

为了让这些不同的VM能够连接到Azure SQL,Azure云为开发者提供了4种选择。

允许 Azure 服务和资源访问此服务器

第一个选择是“允许 Azure 服务和资源访问此服务器”。你可以在SQL Sever的“防火墙和虚拟网络”面板找到这个选项。

v2-815fc49611e06250fe2c1ca1dca03cbb_720w.jpg

如果允许该选项,则可以从Azure的其他服务上访问该SQL数据库。例如一个不在你们组织中的人,只要知道了SQL的账号密码也可以从他在Azure上设置的VM中访问你的SQL。显然这是一种最简单,但同时也是最不安全的方式。

防火墙规则

第二个选择是使用“防火墙规则”。我们同样是在“防火墙和虚拟网络”面板上设置防火墙规则。如下图所示。

v2-a04a2806aeb4486bae9d650c262ee4d0_720w.jpg

通常情况下我们可以禁止“允许 Azure 服务和资源访问此服务器”选项,同时将允许访问该SQL的IP地址添加到防火墙规则中。需要注意的是,我们不仅仅可以添加Azure资源的IP地址,也可以添加本地客户端的IP地址。

但是这个选择也有它的缺点,例如VM的IP地址是动态的那么在使用的过程中显然也会导致一些不便。

虚拟网络规则

第三个选择则是“虚拟网络规则”。

通过为这个SQL server添加已有的VNET或创建一个新的VNET可以允许在同一个VNET内的Azure资源访问该SQL server,而不在这个VNET中的VM则无法对SQL进行访问。这种方式相对来说更加安全。

Azure 专用链接

最后一个选择则是“Azure 专用链接“。

从安全角度来看,Azure专用链接可提供从登录路径到 SQL 数据库的数据外泄保护。此外,它不需要将 IP 地址添加到 SQL 数据库上的防火墙,也不需要对应用程序的连接字符串进行更改。因此是被推荐使用的Azure SQL 的网络安全设置。

如果可以创建Azure 专用链接,那么就使用Azure 专用链接来保证Azure SQL的网络安全。

如果无法创建Azure 专用链接,则记得关闭”允许 Azure 服务和资源访问此服务器“选项,并配置”防火墙规则“和”虚拟网络规则“。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK