问题描述
在Azure Data Factory (数据工厂)中,调用同在Azure中的Function App函数,却出现403 - Forbidden错误。
截图如下:
问题解答
访问Azure Function App遇见403 - Forbidden错误,这是因为Function App启用了限制访问功能,在其中配置了允许访问的IP地址列表,而从ADF中发出的请求使用的IP地址不属于这个列表中。
根据Function App中收集到的日志显示,请求出现403所使用的IP地址为IPv6 -- [fde4:8dba:5**0:6**a:6**9:1*0:a*7:c***]。
当直接以这个IPv6的地址在Function的访问限制页面配置时,却提示错误:(not a valid CIDR address range].
幸好,最后发现可以直接允许一个虚拟网路中子网对其(Function)进行访问,当把ADF的主机所在子网地址配置到访问限制(Access Restrictions)后,ADF 调用 Function 成功。
参考资料
限制访问:https://docs.azure.cn/zh-cn/app-service/app-service-ip-restrictions
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!