【问题标题】:Restrict Azure Web API to Just API Manager将 Azure Web API 限制为仅 API Manager
【发布时间】:2018-02-15 17:11:00
【问题描述】:

我正在 Azure 中部署 RESTful API,并使用 Azure API Manager 保护它们。但是,我无法弄清楚如何限制对实际 API 的调用以阻止绕过 API 管理器的请求。有没有办法在 web.config 或其他东西上限制 IP、域名……在 .net web api 上?

【问题讨论】:

    标签: rest azure azure-web-app-service


    【解决方案1】:

    您可以在 c# 代码中将 IP 列入白名单。检查以下链接以获取代码更改, https://weblogs.asp.net/senthil/restrict-ip-address-in-asp-net-web-api

    您可以在概览部分获取 APIM 的静态 IP 地址。但你必须考虑以下几点,

    在 API 管理的所有层级中,API 管理租户的公共 IP 地址 (VIP) 在租户的生命周期内都是静态的,但有一些例外。在这些情况下 IP 地址会发生变化:

    1. 服务被删除然后重新创建。
    2. 服务订阅被暂停或警告(例如,对于 未付款),然后恢复。
    3. 您添加或删除 Azure 虚拟网络(您可以使用虚拟网络 仅适用于开发者和高级层)。

    对于多区域部署,如果区域被腾出然后恢复,区域地址会发生变化(您只能在高级层使用多区域部署)。

    为多区域部署配置的高级租户每个区域分配一个公共 IP 地址。

    您可以在 Azure 门户的租户页面上获取您的 IP 地址(或多区域部署中的地址)。

    【讨论】:

    【解决方案2】:

    是的,您可以通过 API 管理门户配置呼叫限制和配额策略,包括入站和出站策略。下面是策略模板,你可以选择你想要的。此处限制调用方 IP 将满足您的要求。

    详细配置请查看this article并按照步骤操作。

    【讨论】:

      猜你喜欢
      • 2021-05-20
      • 2013-04-26
      • 2019-05-31
      • 2019-11-05
      • 1970-01-01
      • 2016-01-04
      • 1970-01-01
      • 2021-04-30
      • 2017-07-19
      相关资源
      最近更新 更多