【发布时间】:2021-11-02 08:03:16
【问题描述】:
场景:我创建了 Azure API 管理的即用即付实例。其中,作为 API,我已经导入了 Azure Functions App。 Azure Functions 应用程序也在使用计划中。这些 azure 函数正在调用一些外部 API 并获取数据。我从这些函数中按原样返回数据。
问题:要从外部 API 获取数据,我需要将我的 IP 地址列入白名单。 我的调用模式是 APIM => Azure Function => External API。我正在从我的 UI 中访问 APIM 端点以获取数据。我没有将 azure 函数端点暴露给 UI。 问题是应该将哪些 IP 列入白名单才能获取数据?
尝试过的选项:
- 我已将 APIM 虚拟地址(公共)列入白名单,但这不起作用。
- 我在每个函数中添加了日志以记录出站 IP 地址(使用 ipconfig.me)。这给了我与 APIM 公共 IP 不同的 IP 地址。
我的困惑是,如果我已将这些函数导入 APIM,那么我的出站 IP 地址应该是 APIM 而不是函数,对吗?还是我的理解有误?
如果有人可以帮助解决这种情况,那将非常有帮助。 我们需要将我们的 IP 列入白名单,以便我们可以获取数据。即使我们需要切换到高级计划,也可以对基础设施进行更改。
【问题讨论】:
-
那么,长话短说 - 您是通过 Azure Functions 访问外部 API,而这些 API 是通过 APIM 访问的?返回路径是 External API -> Azure Functions -> APIM -> Client?
-
@kamil-mrzyglod 没错。
标签: azure azure-functions azure-api-management azure-virtual-network