Azure api管理访问虚拟网络

问题描述 投票:0回答:2

我配置了一个虚拟网络 (vnet),它具有为专用端点、Web 应用程序、数据库和 VPN 点到站点等定义的子网...

问题很简单,我不希望通过互联网访问我的任何服务。

我正在尝试配置 azure api 管理服务 (APIM),以便成为访问 vnet 中所有 api 的网关。

有设置方法吗?因为看起来唯一的方法是通过将 APIM 添加到 VNET,而该 APIM 只能与高级 AMS 服务一起使用,但这超出了我的价格范围?

我不认为 APIM 私有入站端点按照我希望的方式工作

干杯

azure azure-api-management azure-virtual-network
2个回答
1
投票

是的,您可以将 APIM 集成到 VNet 中以连接到私有后端。但是,是的,这需要高级级别。

请参阅此处 https://learn.microsoft.com/en-us/azure/api-management/api-management-using-with-vnet?tabs=stv2

另一种方法是使用网络过滤锁定所有后端服务,仅允许来自 APIM 的流量,即使它们仍然具有公共端点。


0
投票

从@silent提到的添加一点。如果您非常关注 VNet 使用情况,APIM 在幕后工作的方式可能会让您稍微担心暂停。

APIM 仍需要附加一个公共 IP 地址。这是因为 APIM 有一个管理 API,需要通过 Azure 门户、CLI、PowerShell、ARM、Terraform 等来访问。该组件不在 VNet 上。它管理 APIM 的功能组件,即 VM 规模集。这包括网络负载均衡器(它拥有 VIP 并存在于您的 VNet 上)以及作为“网关”的虚拟机,也存在于您的 VNet 上。

文档和部署需要特定的 NSG 规则,因为管理 API 必须通过 SD 网络优势访问 VNet。然而,即使这有效,其他事情却不起作用。设置 API 时,APIM 资源内的“测试”功能不起作用,因为这些测试来自不在 VNet 中的管理系统。另外,在我能找到的任何地方都没有记录,通过 URL 导入架构来添加内部 API...这也不起作用,因为它源自管理系统...不存在于您的 VNet 上。

在我看来,这应该在 APIM 中从架构上解决。网关具有到资源的 IP 视线。管理系统应该将这些请求交给可以通过队列处理的网关,然后将响应返回到队列。

我最近经常与 AWS 打交道,APIM 的工作方式感觉很像 AWS 中所有东西的管道胶带和捆扎线。在使用 Azure 资源时,我很少有这种感觉。

© www.soinside.com 2019 - 2024. All rights reserved.