仅允许通过 APIM 访问函数

问题描述

我们的合作伙伴曾经直接访问我们的函数,最近我们创建了一个 APIM 并将我们的 Azure 函数与其连接,我们使用了一些像 JWT 这样的方法来保护它。但是我们发现合作伙伴仍然可以像往常一样访问这些功能。 是否可以拒绝从 Internet 但 APIM 访问功能

解决方法

有两种方法可以限制对 Azure 功能的访问:

  1. 启用 Private Endpoints 功能。这将禁用所有公共访问,并且将仅限制来自 VNET 的访问。此功能将需要一个未使用的子网,然后将用于分配入站私有 IP 地址。最好在与 APIM 相同的 VNET 中创建子网

  2. 使用 Access Restrictions 功能并允许访问 APIM 使用的子网。

注意:其他线程提到了区域 VNet 集成,这是不正确的,因为该功能用于建立出站连接。如果您的应用服务需要调用 VNet 中托管的资源,则区域 VNet 集成会很有帮助。

,

您可以尝试将函数应用和 APIM 放在 Azure VNET 中,然后将拒绝 Internet 访问。

看看这个:

https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet