一条规则仅代表 Azure 防火墙的 Azure IP

A rule represent ONLY Azure IPs for Azure firewall

我们能否在 azure 中创建防火墙规则以仅允许来自 azure 数据中心的连接?

严格来说,这是做不到的。

从根本上说,Azure 不在一个单一的 IP 地址范围内,每个 Azure 区域也不在。事实上,每个区域都被分成多个地址范围,这些地址范围不一定是并发的。定义单个防火墙规则(涵盖整个 Azure 基础结构)的能力需要在 Azure 中进行一些工作来定义和维护一个包含所有这些值的变量。

可能值得指出的是,Azure 确实已经为 InternetVirtualNetwork 提供了类似的解决方案,这些解决方案应用于 default NSG rules。由于 Azure 内但在虚拟网络之外的大部分基础设施本质上是 Internet,为所有 Azure IP 设置这样的变量将使用户可以选择(可能在不知不觉中)打开将他们的资源用于任何类型的恶意 activity.

根据您尝试实现的具体目标,Azure 确实以 Service Endpoints. This functionality has recently left the preview phase, and allows a user to create a security rule between certain PaaS 资源和您的虚拟网络的形式提供了解决方法。目前,此功能仅限于 Azure 存储Azure SQL 数据库Azure SQL 数据仓库.

为所有 Azure IP 范围实施防火墙规则的一种极其草率的方法是手动输入您需要的区域的地址范围,可以下载 here。然而,由于前面提到的安全漏洞,这样做是非常不鼓励的,而且这些 IP 范围不是完全静态的,因此如果微软要编辑某些地址范围,很容易被发现。