Explorer les passerelles API
Votre solution peut contenir plusieurs services front-end et back-end. Dans ce scénario, comment un client sait-il quels points de terminaison appeler ? Que se passe-t-il lors de l’introduction de nouveaux services ou lorsque des services existants sont refactorisés ? Comment les services gèrent-ils l’arrêt SSL, l’authentification et les autres problèmes ?
La passerelle Gestion des API (également appelée plan de données ou runtime) est le composant de service chargé de faire passer les requêtes d’API par un proxy, d’appliquer des stratégies et de collecter des données de télémétrie.
Une passerelle d’API se situe entre les clients et les services. Elle agit comme un proxy inverse, en acheminant les requêtes des clients vers les services. Elle peut également effectuer diverses tâches transversales telles que l’authentification, l’arrêt SSL et la limitation du débit. Si vous ne déployez pas une passerelle, les clients doivent envoyer les requêtes directement aux services back-ends. Toutefois, il existe certains problèmes potentiels relatifs à l’exposition directe des services aux clients :
- Elle peut entraîner un code client complexe. Le client doit effectuer le suivi de plusieurs points de terminaison et gérer les échecs de façon résiliente.
- Elle crée un couplage entre le client et le serveur principal. Le client doit connaître la façon dont les services individuels sont décomposés. Cela rend plus difficiles la maintenance du client et la refactorisation des services.
- Une seule opération peut nécessiter des appels à plusieurs services.
- Chaque service public doit gérer des problèmes tels que l’authentification, le SSL et la limitation du débit client.
- Les services doivent exposer un protocole pratique pour le client, comme HTTP ou WebSocket. Cela limite le choix des protocoles de communication.
- Les services avec des points de terminaison publics représentent une surface d’attaque potentielle et doivent être renforcés.
Une passerelle permet de résoudre ces problèmes en dissociant les clients des services.
Managée et auto-hébergée
Gestion des API offre à la fois des passerelles managées et auto-hébergées :
Managée : la passerelle managée est le composant de passerelle par défaut déployé dans Azure pour chaque instance de Gestion des API dans chaque niveau de service. Avec la passerelle managée, tous les flux de trafic d’API transitent par Azure, quel que soit l’emplacement où les back-ends implémentant les API sont hébergés.
Auto-hébergée : la passerelle auto-hébergée est une version facultative et conteneurisée de la passerelle managée par défaut. Cela est utile pour les scénarios hybrides et multiclouds dans lesquels il est nécessaire d’exécuter les passerelles en dehors d’Azure dans les mêmes environnements où les backends d’API sont hébergés. La passerelle auto-hébergée permet aux clients disposant d’une infrastructure informatique hybride de gérer les API hébergées localement et dans différents clouds à partir d’un seul service Gestion des API dans Azure.