我们正在Azure中设计一个多位置部署,要求将用户发送到最近的来源。然而,目前我们正在使用流量管理器,这会导致客户端基础结构中的另一层出现一些问题。
我们正在调查的另一个选择是Front Door,然而这带来了一个新的挑战——我们如何防止我们的起源被公开?
对于流量管理器,微软发布了一份探测ip的列表,我们可以在我们的网络应用程序中将其列入白名单:https://learn.microsoft.com/en-us/azure/traffic-manager/traffic-manager-faqs#what-是发起健康检查的的ip地址
前门也提供类似的东西吗?理想的结果是一组ip地址(alahttps://azuretrafficmanagerdata.blob.core.windows.net/probes/azure/probe-ip-ranges.json)我们可以将其导入到我们的网络应用程序防火墙中。
您可以通过将Azure FrontDoor Service使用的Anycast IP地址范围列入白名单来锁定对源站的访问:
IPv4-147.243.0.0/16
IPv6-2a01:111:2050::/44
来源:如何将对后端的访问锁定为仅Azure Front Door Service?
您现在可以使用Azure Front Door服务标签来管理将后台流量限制为仅AFD的情况。服务标签概述:
服务标记表示来自给定Azure服务的一组IP地址前缀。Microsoft管理服务标签包含的地址前缀,并在地址更改时自动更新服务标签
上述文档中还提供了AFD的服务标签,以使用AzureFrontDoor.Backend服务标签的方式限制访问。
假设您的后端可以支持它,您还可以添加一个进一步的过滤器,以确保到达后端的流量不仅来自AFD的IP范围,而且是您的AFD!参见此文档:
。。。将后端的流量限制为前门发送的标题"X-Azure-FDID"的特定值
您的AFD的ID可以通过以下方式检索:
使用API版本2020-01-01或更高版本在前门执行GET操作。在API调用中,查找frontdoorID字段。用字段frontdoorID的值过滤Front Door发送到后端的传入标头"X-Azure-FDID"。您也可以在Front Door门户页面的Overview部分下找到Front DoorID值。
Azure Front Door Service提供动态网站加速(DSA),包括全局HTTP负载平衡。前门服务是ADC和CDN网络的混合。当进行健康探测时,前门环境将发送一个探测,该DOC指出,全球约有90个前门环境或持久性有机污染物。该文件似乎无法描述前门环境中的特定探测器IP地址。你可以在Github上查看这个问题。
目前,前门服务是公开预览,可能需要一段时间才能发布。此外,不建议在生产环境中使用它。