Décrit la politique sur les limites de débit d’Auth0.
Auth0 limite l’utilisation de ses services afin d’assurer des performances optimales et de se protéger contre les , les erreurs techniques ou un trafic légitime excessif. Nous vous recommandons de consulter la façon dont Auth0 applique ces limites afin de configurer votre application pour offrir la meilleure expérience utilisateur possible.
Pour connaître les limites de débit associées à votre compte, consultez Configurations des limites de débit, qui présente une matrice de toutes les politiques sur les limites de débit.
Auth0 applique des limites pour protéger les services contre un volume excessif de requêtes et les clients contre les interruptions ou la dégradation du service.Auth0 surveille et, dans bien des cas, applique un ensemble de limites, notamment :
Requêtes visant les environnements (Cloud privé uniquement)
Requêtes visant les locataires par l’intermédiaire de l’API ou d’un point de terminaison d’API
Limites de requêtes par environnement (Private Cloud uniquement)
Dans Private Cloud, les limites de requêtes par environnement dépendent du niveau de performance de Private Cloud. Pour en savoir plus, consultez Private Cloud for AWS ou Private Cloud for Azure.À l’heure actuelle, les limites de débit par environnement de Private Cloud représentent la charge maximale à laquelle le produit Auth0 respecte les SLA. Toutefois, pour le moment, Auth0 applique ces limites et avise les clients uniquement lorsqu’elles sont dépassées pour un locataire donné dans l’environnement. Dans la plupart des cas d’utilisation de Private Cloud, où les clients maintiennent un seul locataire de production, cela ne pose pas de problème; toutefois, les cas d’utilisation qui provisionnent plus d’un locataire de production doivent tenir compte de la charge prévue pour l’ensemble des locataires de l’environnement et mettre en place une surveillance supplémentaire au besoin.
Fonctionnalité
API d’authentification
Toutes les autres API (y compris Management API)
Limites de débit du locataire
Tous les locataires utilisent une limite globale partagée à l’échelle de l’environnement pour l’API, mais la limite de l’environnement constitue un plafond strict. Si la charge combinée de tous les locataires dépasse la limite de l’environnement, les requêtes excédentaires feront l’objet d’une limitation de débit.
Les limites de débit des locataires sont appliquées indépendamment, et la limite de débit de l’environnement agit comme un seuil indiquant un risque de dégradation des performances et d’incidence sur les SLA, mais n’entraîne pas directement de limitation de débit au niveau du locataire.
Limite de débit de l’environnement dépassée (exemple)
Avec une limite d’environnement de 1500 rps, un locataire 1 à 1400 rps et un locataire 2 à 900 rps (pour un total combiné de 2300 rps) entraîneront la limitation de débit de 800 requêtes.
Avec une limite d’environnement de 1500 rps, un locataire 1 à 1400 rps et un locataire 2 à 900 rps (pour un total combiné de 2300 rps) n’entraîneront pas de limitation de débit pour les locataires individuels, mais l’environnement global pourrait subir une dégradation des performances et d’éventuels problèmes liés aux SLA.
Le dépassement d’une limite de débit de l’environnement invalide le contrat de niveau de service (SLA).
Auth0 limite le nombre de requêtes pouvant être effectuées pour un locataire. Ces limites sont configurées en fonction de l’API, puis plus précisément selon les points de terminaison particuliers de chaque API.
Auth0 limite le nombre de requêtes pour une API donnée, quel que soit le point de terminaison de l’API. Les limites d’API peuvent varier selon :
API
Authentication
Management
Type de locataire (Production vs développement ou préproduction)
Niveau d’abonnement (Free, Essential, Professional, Enterprise Public vs Private)
Par exemple, un locataire gratuit hors production peut avoir des limites différentes de celles d’un locataire de production avec un abonnement payant. Pour connaître les configurations précises des limites de débit, consultez Configurations des limites de débit.
Une seule requête d’utilisateur final (p. ex., connexion ou inscription) déclenche généralement plusieurs requêtes vers les points de terminaison de l’API d’authentification. Le ratio réel entre les requêtes des utilisateurs finaux et celles de l’API d’authentification dépend de plusieurs facteurs :
Entité authentifiée (p. ex., machine ou application mobile ou de bureau d’un utilisateur final)
Expérience d’authentification (p. ex., nouveau ou Connexion classique)
Flux d’authentification (p. ex., connexion, inscription ou changement de mot de passe)
Type de flux d’authentification (p. ex., connexion par nom d’utilisateur / mot de passe; connexion via un fournisseur social; connexion lorsqu’un jeton d’authentification existe déjà)
Les clients qui utilisent l’extensibilité peuvent ajouter encore plus de requêtes, non seulement à l’API d’authentification, mais aussi à la , selon la configuration de l’extensibilité.
Consultez les cas d’utilisation des limites de débit pour savoir comment estimer l’incidence de votre configuration Auth0 sur votre utilisation de l’API.
Auth0 limite le nombre de requêtes envoyées aux points de terminaison d’API et, dans certains cas, le nombre d’opérations sur ces points de terminaison. Les limites des points de terminaison d’API varient aussi selon :
l’API
le type de locataire
le niveau d’abonnement
Par exemple, un locataire gratuit hors production n’a pas les mêmes limites qu’un locataire de production avec un abonnement payant.
Ordre d’application des limites de requêtes du locataire
Lorsque des requêtes sont adressées à votre locataire, Auth0 les évalue d’abord en fonction de la limite globale de l’API, puis en fonction de la limite de débit propre à des points de terminaison précis de l’API.
Pour les connexions de base de données, Auth0 limite certains types de tentatives de connexion répétées selon le compte utilisateur et l’adresse IP. Pour protéger la stabilité globale du système, Auth0 applique des limites de débit par combinaison utilisateur/mot de passe afin d’atténuer la charge. Le haut degré de personnalisation d’Auth0 peut accroître le risque de dégradation du service. Les causes peuvent inclure :
Tests de charge intensifs
Tests de performance
Code inefficace qui amène les utilisateurs à se connecter plusieurs fois
Les requêtes sont soumises à des limites, comme indiqué dans les politiques propres à chaque API Auth0.De plus, une limite de débit s’applique aux connexions d’un même utilisateur : si une même adresse IP effectue 20 tentatives de connexion en une minute sur le même compte utilisateur, la limite de débit entre en vigueur. Par la suite, Auth0 autorise 10 tentatives par minute pour cet utilisateur. Toute combinaison de tentatives de connexion réussies ou échouées compte dans cette limite.
Limites des messages SMS pour l’authentification multifacteur (utilisateurs finaux uniquement)
Si vous tentez d’envoyer plus de 10 messages SMS à votre appareil en une heure, vous recevrez un message d’erreur indiquant un dépassement de limite de débit.Lorsque vous dépassez votre limite d’envoi de messages, vous devez attendre au moins une heure après la première demande de message avant d’en demander un autre. Vous disposerez d’une tentative supplémentaire après chaque heure additionnelle écoulée.
Les limites appliquées aux requêtes du flux de connexion sociale native sont définies d’après le corps des requêtes, selon les critères initiaux suivants :
L’offre Public Performance Burst est un module complémentaire offert avec les abonnements Enterprise qui bonifie un déploiement Public Cloud existant. Cette offre permet d’augmenter dynamiquement la limite de requêtes de l’API d’authentification jusqu’à un multiple de la limite de requêtes Enterprise par défaut de 100 RPS, pendant un maximum de 48 heures par mois.
Ce module complémentaire étend uniquement les limites de requêtes de l’API d’authentification et ne s’applique PAS à la Management API ni aux autres points de terminaison soumis à une limitation de débit hors du cadre de l’API d’authentification.
À l’heure actuelle, il existe trois multiplicateurs Public Performance Burst (2x, 3x et 4x), qui permettent respectivement 200, 300 et 400 RPS pour l’API d’authentification pendant un maximum de 48 heures par mois. Les 48 heures sont comptabilisées et déduites du quota mensuel autorisé par tranches de 5 minutes, ce qui permet d’utiliser l’API au niveau du multiplicateur pendant 576 tranches de 5 minutes par mois.Lorsque le volume de requêtes vers l’API d’authentification dépasse la valeur par défaut de 100 RPS, une tranche de 5 minutes est déduite de l’allocation mensuelle, et le trafic est autorisé au débit associé au multiplicateur. Le trafic peut ensuite rester dans la plage du multiplicateur pendant les 5 minutes consécutives complètes à partir de ce moment, sans entraîner de déductions supplémentaires.Il est possible de surveiller les événements de déduction de tranches dans les journaux du locataire. Chaque déduction génère un événement de type appi dans les journaux du locataire, avec des renseignements sur l’allocation déjà consommée et l’allocation restante.Pour en savoir plus, consultez la section API d’authentification dans Rate Limits - Enterprise.
L’offre Private Performance Burst (actuellement offerte sur AWS pour les niveaux 30x et 60x) comprend une capacité de performance en rafale (de pointe) pouvant atteindre 30x (3 000 RPS) ou 60x (6 000 RPS) pendant un maximum de 80 heures par mois. La capacité de performance de base, qui correspond à la moitié de la capacité de performance en rafale, est disponible pendant le reste du mois.Autrement dit, Private Performance Burst 30x comprend :
Capacité de base : 1 500 RPS pour le mois complet
Capacité en rafale/de pointe : 3 000 RPS pendant un maximum de 80 heures par mois
Si les transactions d’authentification dépassent la limite de base des requêtes API, une heure est déduite de l’allocation mensuelle. À partir de ce moment, le trafic peut demeurer à un niveau élevé pendant toute l’heure continue qui suit. Des déductions supplémentaires sont effectuées de la même manière chaque fois que le seuil est franchi de nouveau.Une fois l’allocation de 80 heures épuisée, le trafic d’authentification sera limité à la capacité de base jusqu’à l’entrée en vigueur de la nouvelle allocation mensuelle.
Pour assurer la disponibilité du système et une utilisation équitable de ses ressources, Auth0 limite le nombre de requêtes simultanées en cours dans l’ensemble des produits d’extensibilité : Actions, Hooks, Rules, connexions de base de données personnalisées, Extensions et connexions OAuth2 personnalisées. Les locataires qui dépassent leurs limites de requêtes simultanées doivent s’attendre à recevoir des erreurs pour les nouvelles requêtes jusqu’à ce que les requêtes en cours soient terminées. Les limites de concurrence sont définies ci-dessous :
La concurrence peut être calculée en multipliant le RPS prévu par la latence de chaque requête. Par exemple, un locataire qui a deux Actions post-login associées, qui prennent chacune 250 ms, avec un total de 400 RPS de connexion, a une concurrence prévue de (2 * (400 requêtes / 1 seconde) * (.25 seconde / 1 requête)) = 200.Pour éviter que votre locataire soit touché par ces limites de concurrence, veillez à ce que toute logique d’extensibilité susceptible de s’exécuter longtemps, comme les appels à des API externes, soit assortie de délais d’expiration raisonnables.
Auth0 définit des limites de débit et des limites de rafale pour ses API. Alors que la limite de débit correspond au volume maximal de trafic soutenu que le système autorise sur une base continue, la limite de rafale correspond au volume maximal de trafic à court terme que le système autorise dans un intervalle de temps donné. Les limites de débit et les limites de rafale d’Auth0 fonctionnent ensemble pour offrir un meilleur contrôle des volumes de trafic dynamiques.Les limites de débit d’Auth0 utilisent un algorithme du seau à jetons comportant les configurations suivantes :
Clés de limite :
En général, une clé de limite de débit repose sur deux facteurs principaux :
API et point de terminaison
Type de locataire
Dans certains cas, des facteurs supplémentaires s’appliquent :
IP source
ID de l’utilisateur cible
Valeurs de limite :
Taille du seau : Le nombre maximal de requêtes qu’une API ou un point de terminaison reçoit en général, ou d’un utilisateur ou d’une adresse IP en particulier, avant l’ajout de nouvelles requêtes.
Taux de remplissage : Le rythme auquel de nouvelles requêtes sont ajoutées au seau.
À partir de ces deux valeurs, Auth0 calcule la limite de rafale et la limite de débit soutenue :
Limite de rafale : Égale à la taille du seau.
Limite de débit soutenue : Taux de remplissage en requêtes par minute ou par seconde.
Si la limite de débit soutenue est calculée en requêtes par seconde, les nouvelles requêtes sont ajoutées à la milliseconde. Si la limite de débit soutenue est calculée en requêtes par minute, les nouvelles requêtes sont ajoutées sur une base d’une seconde.