Set usage quota by key

S’APPLIQUE À : Développeur | De base | Standard | Premium

La stratégie quota-by-key applique un volume d’appels et/ou un quota de bande passante renouvelable ou illimité par clé. La clé peut avoir une valeur de chaîne arbitraire ; elle est généralement fournie par le biais d’une expression de stratégie. Une condition d’incrément facultative peut être ajoutée pour spécifier quelles demandes doivent être comptées dans le quota. Si plusieurs stratégies incrémentent la même valeur de clé, celle-ci est incrémentée une seule fois par demande. Lorsque le quota est dépassé, l’appelant reçoit un code d’état de réponse 403 Forbidden, et la réponse inclut un en-tête Retry-Afterdont la valeur est l’intervalle de nouvelle tentative recommandé en secondes.

Pour comprendre la différence entre les limites de taux et les quotas, consultez Limites de taux et quotas.

Notes

Quand les ressources de calcul sous-jacentes redémarrent dans la plateforme de service, Gestion des API peut continuer à gérer les requêtes pendant une courte période après qu’un quota est atteint.

Notes

Définissez les éléments enfants et de stratégie dans l’ordre fourni dans l’instruction de stratégie. Pour vous aider à configurer cette stratégie, le portail fournit un éditeur guidé basé sur des formulaires. En savoir plus sur comment définir ou modifier des stratégies du service Gestion des API.

Instruction de la stratégie

<quota-by-key calls="number"
              bandwidth="kilobytes"
              renewal-period="seconds"
              increment-condition="condition"
              counter-key="key value"
              first-period-start="date-time" />

Attributs

Attribut Description Obligatoire Default
bandwidth Nombre maximal de kilo-octets autorisés au cours de l’intervalle de temps spécifié dans le paramètre renewal-period. Les expressions de stratégie ne sont pas autorisées. Il est obligatoire de spécifier calls, bandwidth ou les deux. N/A
calls Nombre maximal d’appels autorisés au cours de l’intervalle de temps spécifié dans le paramètre renewal-period. Les expressions de stratégie ne sont pas autorisées. Il est obligatoire de spécifier calls, bandwidth ou les deux. N/A
counter-key Clé à utiliser pour quota policy. Pour chaque valeur de clé, un compteur unique est utilisé pour toutes les étendues auxquelles la stratégie est configurée. Les expressions de stratégie sont autorisées. Oui N/A
increment-condition Expression booléenne spécifiant si la demande doit être comptée dans le quota (true). Les expressions de stratégie sont autorisées. Non N/A
renewal-period Durée en secondes de la fenêtre fixe après laquelle le quota est réinitialisé. Le début de chaque période est calculé par rapport à first-period-start. Période minimale : 300 secondes. Lorsque renewal-period est défini sur 0, la période est définie sur infinie. Les expressions de stratégie ne sont pas autorisées. Oui N/A
first-period-start Date et heure de début pour les périodes de renouvellement de quota, au format suivant : yyyy-MM-ddTHH:mm:ssZ tel que spécifié par la norme ISO 8601. Les expressions de stratégie ne sont pas autorisées. Non 0001-01-01T00:00:00Z

Usage

Notes d’utilisation

La valeur de l’attribut counter-key doit être unique dans toutes les API dans l’instance de Gestion des API si vous ne souhaitez pas partager le total entre les autres API.

Exemple

<policies>
    <inbound>
        <base />
        <quota-by-key calls="10000" bandwidth="40000" renewal-period="3600"
                      increment-condition="@(context.Response.StatusCode >= 200 && context.Response.StatusCode < 400)"
                      counter-key="@(context.Request.IpAddress)" />
    </inbound>
    <outbound>
        <base />
    </outbound>
</policies>

Pour plus d’informations et d’exemples sur cette stratégie, consultez la page Limitation avancée des demandes dans la Gestion des API Azure.

Pour plus d’informations sur l’utilisation des stratégies, consultez :