以下是我的情况:
我正在从Logic APP调用API管理。
我想限制IP地址,以便只有Logic App可以调用API管理。
我正在对下面提到的here的IP地址使用IP过滤器
<ip-filter action="allow | forbid">
<address>40.112.243.160</address>
<address>address</address>
</ip-filter>
但是我无法弄清楚API Management的IP地址。它与此link中提供的IP地址列表不同。它以10. 。。*开头。
我在这里错过了什么吗?
答案 0 :(得分:2)
据我所知,每个区域都有Azure Logic App的出站IP地址列表。有关更多详细信息,请参阅doc。如果要避免在同一区域中使用Logic App的其他用户访问您的资源或获取静态单个IP地址,则可以进一步使用Azure API管理充当Logic App的反向代理。然后在APIM中使用以下策略:
<ip-filter action="allow | forbid">
<address>address</address>
<address-range from="address" to="address" />
</ip-filter>
答案 1 :(得分:1)
您可以使用来自APIM中特定IP地址和/或地址范围的ip-filter
policy filters(允许/拒绝)呼叫。
政策声明
<ip-filter action="allow | forbid">
<address>address</address>
<address-range from="address" to="address" />
</ip-filter>
您可以从此link获取逻辑应用程序的IP地址。然后您可以将APIM设置为:
<ip-filter action="allow">
<address>address1</address>
<address>address2</address>
<address>address3</address>
</ip-filter>
更新:
但是我无法弄清楚API Management的IP地址。它与此链接中提供的IP地址列表不同。
使用逻辑应用程序调用APIM时,您会在输出中看到X-Forwarded-For属性,这是识别客户端原始IP地址的常用方法通过HTTP代理或负载平衡器。
这是我的测试快照。我的逻辑应用程序位置为eastasia
,我的IP地址为13.75.94.173
,位于East Asia Outbound IP of Logic App内。
答案 2 :(得分:0)
一个区域中的所有逻辑应用程序都使用相同范围的IP地址。为了支持逻辑应用程序直接通过HTTP,HTTP + Swagger和其他HTTP请求进行的调用,请在APIM中设置防火墙配置,以便根据逻辑应用程序所在的位置将这些出站地址包括在内:
Here是基于区域的Logic App IP地址列表。