在为存储帐户实现网络安全之前,请查看本部分中的重要限制和注意事项。
一般准则和限制
要使用 Azure 门户、Azure 存储资源管理器和 AzCopy 等工具访问数据,必须使用配置网络安全规则时建立的受信任边界内的计算机。
某些操作(如 Blob 容器操作)可以通过控制平面和数据平面来执行。 如果尝试从 Azure 门户执行诸如列出容器之类的操作,该操作会成功,除非被另一种机制阻止。 从应用程序(例如 Azure 存储资源管理器)访问 blob 数据的尝试受防火墙限制控制。
有关数据平面操作的列表,请参阅 Azure 存储 REST API 参考。
有关控制平面操作的列表,请参阅 Azure 存储资源提供程序 REST API 参考。
对于面向 Azure 存储的所有网络协议(包括 REST 和 SMB),将强制实施网络规则。
网络规则不会影响虚拟机 (VM) 磁盘流量,包括装载和卸载操作以及磁盘 I/O,但它们确实有助于保护对页 Blob 的 REST 访问。
可通过创建例外,使用应用了网络规则的存储帐户中的非托管磁盘来备份和还原 VM。 防火墙例外不适用于托管磁盘,因为 Azure 已管理这些磁盘。
如果删除虚拟网络规则中包含的子网,则会从存储帐户的网络规则中删除该子网。 如果创建具有相同名称的新子网,则它无权访问存储帐户。 若要允许访问,则必须在存储帐户的网络规则中明确授权新子网。
在客户端应用程序中引用服务终结点时,建议避免依赖缓存的 IP 地址。 存储帐户 IP 地址可能会更改,依赖于缓存的 IP 地址可能会导致意外行为。 此外,我们建议遵循 DNS 记录的生存时间 (TTL),并避免将其重写。 重写 DNS TTL 可能会导致意外行为。
根据设计,从受信任的服务访问存储帐户优先于其他网络访问限制。 如果在将“公共网络访问”设置为“从选定的虚拟网络和 IP 地址启用”之后将其设置为“禁用”,则之前配置的任何资源实例和例外(包括允许受信任服务列表中的 Azure 服务访问此存储帐户),都将继续有效。 因此,这些资源和服务可能仍有权访问存储帐户。
即使禁用公共网络访问,仍可能会收到来自 Microsoft Defender for Storage 或 Azure 顾问的警告,建议使用虚拟网络规则限制访问。 使用模板禁用公共访问时,可能会发生这种情况。 即使将 PublicNetworkAccess 属性设置为 Disabled,defaultAction 属性仍设置为“允许”。 虽然 PublicNetworkAccess 属性优先,但Microsoft Defender 等工具也会报告 defaultAction 属性的值。 若要解决此问题,请使用模板设置 defaultAction 属性 Deny ,或使用 Azure 门户、PowerShell 或 Azure CLI 等工具禁用公共访问。 这些工具会自动将 defaultAction 属性更改为 “拒绝” 值。
IP 网络规则的限制
IP 网络规则仅适用于公共 Internet IP 地址。
IP 规则不允许使用为专用网络保留的 IP 地址范围(如 RFC 1918 中所定义)。 专用网络包括以 10、172.16 到 172.31 以及 192.168 开头的地址。
您必须使用CIDR 表示法,如 16.17.18.0/24 的形式或单个 IP 地址(例如 16.17.18.19),来提供允许的互联网地址范围。
不支持使用 /31 或 /32 前缀大小的小型地址范围。 使用单个 IP 地址规则配置这些范围。
仅支持使用 IPv4 地址配置存储防火墙规则。
不能使用 IP 网络规则来限制对存储帐户所在的同一 Azure 区域中的客户端的访问。 IP 网络规则对源自与存储帐户相同的 Azure 区域的请求不起作用。 请使用虚拟网络规则来允许相同区域的请求。
不能使用 IP 网络规则来限制对虚拟网络中具有服务终结点的 配对区域中 的客户端的访问。
不能使用 IP 网络规则来限制对部署在存储帐户所在的同一区域中的 Azure 服务的访问。
与存储帐户部署在同一区域中的服务使用专用的 Azure IP 地址进行通信。 因此,不能根据其公共出站 IP 地址范围限制对特定 Azure 服务的访问。
Next steps
- 详细了解 Azure 网络服务终结点。
- 深入了解适用于 Azure Blob 存储的安全建议。