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-After
dont 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"
increment-count="number"
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 |
increment-count | Nombre par lequel le compteur est augmenté par demande. Les expressions de stratégie sont autorisées. | Non | 1 |
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
- Sections de la stratégie : inbound
- Étendues de la stratégie : global, espace de travail, produit, API, opération
- Passerelles : classiques, auto-hébergées, espace de travail
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.
Stratégies connexes
Contenu connexe
Pour plus d’informations sur l’utilisation des stratégies, consultez :
- Tutoriel : Transformer et protéger votre API
- Référence de stratégie pour obtenir la liste complète des instructions et des paramètres de stratégie
- Expressions de stratégie
- Définir ou modifier des stratégies
- Réutilisation de configurations de stratégie
- Référentiel d’extrait de stratégie
- Créer des stratégies à l’aide de Microsoft Copilot dans Azure