Azure functions 无法限制对Azure函数应用程序的调用

Azure functions 无法限制对Azure函数应用程序的调用,azure-functions,azure-api-management,Azure Functions,Azure Api Management,我在APIM(内部Vnet)后面安装了Azure函数应用程序。 我想这样设置,只有来自APIM的调用才会被Functionapp拾取,其他什么都不会 对于功能应用程序,它的UnderPremium计划自动生成可从internet调用的公共Url。根据MS文档,当我与VNet集成时,NSG中针对该子网的入站策略不适用。它所做的一切,都允许Functionapp与VNet内的资源进行对话。因此,另一种选择是使用IP白名单,通过它我可以控制允许谁调用Functionapp 问题是我的APIM是内部的,

我在APIM(内部Vnet)后面安装了Azure函数应用程序。 我想这样设置,只有来自APIM的调用才会被Functionapp拾取,其他什么都不会

对于功能应用程序,它的UnderPremium计划自动生成可从internet调用的公共Url。根据MS文档,当我与VNet集成时,NSG中针对该子网的入站策略不适用。它所做的一切,都允许Functionapp与VNet内的资源进行对话。因此,另一种选择是使用IP白名单,通过它我可以控制允许谁调用Functionapp

问题是我的APIM是内部的,这意味着没有分配给它的公共IP。那么,在我的场景中,有没有一种方法可以限制只从APIM(内部)传入Functionapp的呼叫


Azure应用程序服务(Webapi或Webapp)也存在类似问题。

您可以为此使用访问限制功能(IP白名单)。您也可以选择“VNET”,而不是固定(公共)IP范围。这使您能够选择特定的VNET和子网(使用服务端点),以限制流量仅来自您控制的特定VNET。

您应该能够使用访问限制(IP白名单),并在其中选择VNET和您的网络的子网APIM@silent正如我在问题中提到的,APIM没有公共IP。那么,我如何做IP白名单?另外,注册VNet集成,我的FA已经集成了VNet,因此APIM当前所在的子网。但是,我的问题是如何只允许APIM发送不来自任何其他来源的请求。是的,因为在白名单选择中,当您选择VNET时,您将选择一个子网,而不是(公共)IP。你真的试过了吗?@无声谢谢,我看到了选择子网的选项,它成功了。谢谢你的意见。很高兴听到。如果APIM有SKU(层):消费,它没有公共静态IP地址,如何限制除api的IP地址以外的所有IP地址,即使我ping了api url以获取IP地址?在消费层中运行时,我认为您实际上没有机会限制网络级别的调用。您可以在APIM中插入一些HTTP头并在函数中检查它。但这是堆栈中的另一个级别