Есть ли способ изменить значение ограничения скорости по подписке в Azure API Management - PullRequest
0 голосов
/ 07 мая 2020

В Azure API Management можно ограничивать тарифы на звонки по подписке и ключу: https://docs.microsoft.com/en-us/azure/api-management/api-management-access-restriction-policies#LimitCallRateByKey

Мой вопрос - есть ли способ изменить лимит на звонки и продление период по подписке? Так, например, подписка A может вызывать операцию 100 раз в минуту, но подписка B может вызывать ее 500 раз за 10 секунд? это возможно. Есть ли другой способ?

Спасибо, Крис.

1 Ответ

1 голос
/ 07 мая 2020

Если я вас правильно понял, это может быть одно из решений:

<policies>
<inbound>
    <base />
    <choose>
        <when condition="@(context.Subscription.Id == "123")">
            <rate-limit-by-key calls="500" renewal-period="60" counter-key="@(context.Subscription.Id)" />
        </when>
        <when condition="@(context.Subscription.Name == "example-b")">
            <rate-limit-by-key calls="100" renewal-period="60" counter-key="@(context.Subscription.Id)" />
        </when>
        <otherwise>
            <rate-limit-by-key calls="10" renewal-period="60" counter-key="@(context.Subscription.Id)" />
        </otherwise>
    </choose>
</inbound>
<backend>
    <base />
</backend>...

Таким образом, я думаю, вы можете изменить ограничение скорости, указав c идентификаторы или имена подписки.

...