Explorer les passerelles d’API
Votre solution peut contenir plusieurs services frontaux et principaux. Dans ce scénario, comment un client sait-il quels points de terminaison appeler ? Que se passe-t-il lorsque de nouveaux services sont introduits ou que les services existants sont refactorisé ? Comment les services gèrent-ils l’arrêt SSL, l’authentification et d’autres problèmes ?
La passerelle Gestion des API (également appelée plan de données ou runtime) est le composant de service qui est chargé de proxyer les demandes d’API, d’appliquer des stratégies et de collecter des données de télémétrie.
Une passerelle d’API se trouve entre les clients et les services. Elle agit comme un proxy inverse, en acheminant les requêtes des clients vers les services. Il peut également effectuer différentes tâches croisées telles que l’authentification, l’arrêt SSL et la limitation du débit. Si vous ne déployez pas de passerelle, les clients doivent envoyer des demandes directement aux services principaux. Toutefois, il existe des problèmes potentiels liés à l’exposition des services directement aux clients :
- Cela peut entraîner un code client complexe. Le client doit suivre plusieurs points de terminaison et gérer les défaillances de manière résiliente.
- Il crée un couplage entre le client et le serveur principal. Le client doit savoir comment les services individuels sont décomposés. Cela rend plus difficile la maintenance du client et aussi plus difficile à refactoriser les 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, SSL et la limitation du débit client.
- Les services doivent exposer un protocole convivial client tel que HTTP ou WebSocket. Cela limite le choix des protocoles de communication.
- Les services avec des points de terminaison publics sont une surface d’attaque potentielle et doivent être renforcés.
Une passerelle permet de résoudre ces problèmes en découplant 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 :
Géré : la passerelle managée est le composant de passerelle par défaut déployé dans Azure pour chaque instance gestion des API de 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é : la passerelle auto-hébergée est une version facultative en conteneur 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.