Cloud-native API Gateway vous permet d'ajouter des politiques et de configurer des plug-ins pour les API et les opérations afin d'améliorer leur sécurité, leurs performances et leur maintenabilité.
Les modifications apportées aux politiques prennent effet immédiatement. Il n'est pas nécessaire de republier l'API.
Par défaut, la passerelle applique les configurations de plug-ins au niveau de l'API au niveau de l'opération.
Bien que vous ne puissiez pas supprimer les politiques au niveau de l'API depuis le niveau de l'opération, les politiques au niveau de l'opération peuvent remplacer celles définies au niveau de l'API.
Procédure
-
Ajoutez une politique d'API de deux manières : depuis l'extérieur d'une instance ou depuis l'intérieur d'une instance.
APIs outside an instance
Connectez-vous à la console Cloud-native API Gateway. Dans le volet de navigation de gauche, cliquez sur API et sélectionnez une région dans la barre de menu supérieure.
Cliquez sur l'API cible et sélectionnez l'instance cible dans la liste déroulante.
APIs inside an instance
Connectez-vous à la console Cloud-native API Gateway. Dans le volet de navigation de gauche, cliquez sur Instance et sélectionnez une région dans la barre de menu supérieure.
Sur la page Instance, cliquez sur l'ID de l'instance de passerelle cible. Dans le volet de navigation de gauche, cliquez sur API, puis sur l'API cible.
-
Configurez des politiques et des plug-ins au niveau de l'API ou au niveau de l'opération :
Niveau de l'API : Cliquez sur l'onglet API Policy Configuration pour configurer les politiques et les plug-ins pour toutes les opérations au niveau de l'API. Ensuite, cliquez sur Enable Policy/Plug-in.
Niveau de l'opération : Dans l'onglet Operations, cliquez sur l'opération cible. Cliquez sur l'onglet Policy Configuration, puis sur Enable Policy/Plug-in.
Dans le panneau Enable Policy/Plug-in, sélectionnez une politique ou un plug-in à configurer. Pour plus d'informations, consultez Configuration des politiques et Configuration des plug-ins.
Politiques
Politique de limitation du débit
Cloud-native API Gateway prend en charge les politiques de limitation du débit aux niveaux de l'API et de l'opération. Ces politiques empêchent les requêtes entrantes de submerger vos services backend et vous aident à éviter les pannes en cascade. Dans les scénarios à forte concurrence, la limitation du débit protège la disponibilité des services backend en bloquant certaines requêtes. Cela vous permet de contrôler précisément le nombre de requêtes pour chaque API et opération sur une période donnée, en veillant à ce que ce nombre ne dépasse pas un seuil prédéfini.
Les politiques de limitation du débit incluent le Contrôle de la concurrence, le Contrôle du trafic et le Disjoncteur.
-
Politique de contrôle de la concurrence : Cette politique limite le nombre de requêtes simultanées. Elle fonctionne en comptabilisant le nombre total de requêtes actuellement traitées par la passerelle. Lorsque ce nombre atteint le seuil configuré, la passerelle bloque immédiatement le nouveau trafic. Vous pouvez définir ce seuil pour qu'il corresponde au nombre maximal de requêtes simultanées que votre service backend peut gérer, protégeant ainsi sa disponibilité lors des pics de trafic.
-
Politique de contrôle du trafic : Cette politique limite le débit des requêtes en fonction du nombre de requêtes par seconde (QPS). Elle fonctionne en surveillant le QPS pour une API ou une opération. Lorsque le QPS atteint le seuil configuré, la passerelle bloque immédiatement le nouveau trafic. Cela empêche les services backend d'être submergés par des pics de trafic soudains et garantit une haute disponibilité.
-
Politique de disjoncteur : Cette politique protège les services backend en surveillant le temps de réponse ou le taux d'erreur des API et des opérations. Lorsqu'un seuil spécifié est atteint, la passerelle « déclenche le disjoncteur », échouant immédiatement les requêtes vers le service instable pour éviter une charge supplémentaire. Après une durée configurée, la passerelle passe à un état « semi-ouvert » et autorise un nombre limité de requêtes de test pour vérifier si le service a récupéré. Si le service est stable, le circuit se ferme ; sinon, il se déclenche à nouveau.
L'état du disjoncteur est maintenu indépendamment par chaque nœud de la passerelle. Chaque nœud compte les requêtes et calcule le ratio d'appels lents ou le ratio d'exceptions de manière autonome. Le seuil de déclenchement du disjoncteur s'applique par nœud et n'est pas agrégé à l'échelle du cluster. Lorsque vous configurez le Minimum Number of Requests, la Statistical Window Duration et le seuil de ratio de déclenchement du disjoncteur, gardez à l'esprit que ces valeurs s'appliquent aux statistiques locales d'un seul nœud, et non à l'ensemble du cluster de passerelles.
Politique de réécriture
Une politique de réécriture vous permet de modifier le chemin de la requête et le nom d'hôte avant de transférer la requête au service backend. Cela permet de répondre à des exigences métier et architecturales spécifiques en garantissant que les requêtes sont routées vers le bon service ou endpoint.
Politique de modification des en-têtes
La fonctionnalité de modification des en-têtes vous permet de changer les en-têtes de requête avant qu'ils ne soient transférés au service backend, ou dans une réponse avant qu'elle ne soit renvoyée au client.
Politique CORS
Le partage de ressources cross-origin (CORS) est une fonctionnalité de sécurité qui permet à un serveur d'application web de contrôler l'accès cross-origin, permettant ainsi un transfert de données sécurisé. Cloud-native API Gateway prend en charge les politiques CORS aux niveaux de l'API et de l'opération. Vous pouvez spécifier quels domaines et méthodes de requête peuvent accéder à vos ressources.
La politique CORS ne prend pas effet pour les services mock. Vous devez configurer un service backend réel pour les tests.
Politique de réplication du trafic
La politique de réplication du trafic vous permet de copier le trafic applicatif en direct vers un service spécifié. Cette fonctionnalité est utile pour les tests de simulation et le diagnostic des problèmes, afin de vous aider à évaluer les performances de l'application et à résoudre les pannes.
Politique de délai d'attente
Cloud-native API Gateway fournit des paramètres de délai d'attente aux niveaux de l'API et de l'opération. Vous pouvez configurer le temps maximum que la passerelle attend une réponse du service backend. Si la passerelle ne reçoit pas de réponse dans le délai spécifié, elle renvoie un code d'état HTTP 504 (Gateway Timeout) au client.
Politique de nouvelle tentative
Cloud-native API Gateway fournit des paramètres de nouvelle tentative aux niveaux de l'API et de l'opération pour retenter automatiquement les requêtes ayant échoué. Vous pouvez configurer les conditions de nouvelle tentative, telles que le déclenchement d'une nouvelle tentative en cas d'échec de connexion, de service backend indisponible ou de code d'état HTTP spécifique.
Plug-ins
Cliquez sur l'onglet Add Plug-in.
-
Dans la section Quick Navigation, sélectionnez un type de plug-in ou recherchez un plug-in par nom, puis cliquez sur la carte du plug-in :
Si le plug-in n'est pas installé, cliquez sur Install and Configure dans la boîte de dialogue contextuelle. Dans la boîte de dialogue suivante, configurez les règles du plug-in et activez-le.
Si le plug-in est déjà installé, configurez les règles du plug-in et activez-le dans la boîte de dialogue contextuelle.
-
Cliquez sur OK pour revenir à la liste des pièces jointes de l'API, où vous pouvez afficher l'état des pièces jointes et de l'activation des plug-ins pour les opérations.
La liste des pièces jointes est un organigramme. Elle comprend quatre blocs : Frontend API, Inbound Processing, Backend Service et Outbound Processing. Les flèches entre les blocs indiquent le flux de requêtes. Chaque bloc de traitement répertorie les plug-ins attachés, et vous pouvez en ajouter d'autres en cliquant sur le lien Enable Policy/Plug-in.