1

我构建了一个体系结构,您可以在其中触发 Azure 函数将数据推送到位于我的 DMZ 后面的 Cosmos DB。一些实施指南规定,如果可能,应始终启用服务端点。但是,如果这样做,Cosmos DB 可能会暴露给 Internet(尽管我不允许 Cosmos DB 防火墙中的任何 IP)。曝光是指 Azure 中处理服务的顺序 ( https://msdnshared.blob.core.windows.net/media/2016/05/1.bmp )。因此,Cosmos DB 默认有一个公共端点。

除了阻止所有 IP 地址外,我可以限制任何来自 Internet 的公共访问吗?

4

1 回答 1

2

除了阻止所有 IP 地址外,我可以限制任何来自 Internet 的公共访问吗?

实际上,通过启用服务终结点,您可以限制只有来自该子网的请求才能访问 Azure Cosmos DB。从 VNet 到 Azure 服务的流量始终保留在 Microsoft Azure 主干网络上。因此,这是访问 Azure 中资源的一种安全方式。

启用服务终结点后,子网中的虚拟机的源 IP 地址在与来自该子网的服务通信时从使用公共 IPv4 地址切换到使用其私有 IPv4 地址。此外,与该子网关联的默认 NSG 继续与服务端点一起使用,请阅读此处。如果要拒绝所有出站 Internet 流量并仅允许从该子网访问 cosmos DB,则可以在 NSG 的出站规则中添加服务标签作为目标。

在此处输入图像描述

编辑

你可以看看这个Azure private link(preview),但它似乎还不适用于 Azure Cosmos DB 帐户。

Azure 专用链接使您能够通过虚拟网络中的专用终结点访问 Azure PaaS 服务(例如,Azure 存储和 SQL 数据库)和 Azure 托管的客户/合作伙伴服务。您的虚拟网络和服务之间的流量通过 Microsoft 主干网络传输,从而消除了来自公共 Internet 的风险。

于 2019-10-16T09:32:24.463 回答