是否有可能创建一个策略,即使在需要opim订阅密钥时,该策略也会有条件地公开azure中的api管理终结点?

是否有可能创建一个策略,即使在需要opim订阅密钥时,该策略也会有条件地公开azure中的api管理终结点?,azure,azure-api-management,Azure,Azure Api Management,我正在寻找的一个示例如下,但allow-access元素不存在。我可以用什么替换,以便不检查订阅密钥。i、 在这种情况下,只要所有呼叫者发出GET请求,就允许他们访问控制器 <policies> <inbound> <base /> <choose> <when condition="@(context.Request.Method.Equals("GET"))">

我正在寻找的一个示例如下,但allow-access元素不存在。我可以用什么替换,以便不检查订阅密钥。i、 在这种情况下,只要所有呼叫者发出GET请求,就允许他们访问控制器

<policies>
<inbound>
    <base />
    <choose>
        <when condition="@(context.Request.Method.Equals("GET"))">
            <allow-access />
        </when>
    </choose>
</inbound>
<backend>
    <base />
</backend>
<outbound>
    <base />
</outbound>
<on-error>
    <base />
</on-error>


如有任何帮助,我们将不胜感激。

一个解决方法是关闭产品上的
Requires subscription
设置,并自己检查入站策略中的订阅密钥。下面是一个如何做到这一点的例子

  • 转到起动机产品的设置
  • 取消选中“需要订阅”并保存
  • 打开产品的策略并将以下策略添加到入站策略。
    策略的值是初学者产品的订阅密钥
  • 
    920B4E307F41FF9BD4A3BD6A5450EE
    
    目前我无法想象如何有条件地关闭每个操作/方法的订阅密钥检查,因为这显然是一个API设置。但是让我们看看是否有其他人有想法。但是。。。您是否对订阅密钥进行硬编码?您如何管理多个订阅和多个用户?如果您有几十个密钥及其生命周期(添加、过期、重新启用等),该怎么办?