Passerelle d’API dans la Gestion des API Azure
S’APPLIQUE À : Tous les niveaux de Gestion des API
Cet article fournit des informations sur les rôles et les fonctionnalités du composant de passerelle Gestion des API et compare les passerelles que vous pouvez déployer.
Informations connexes :
Pour obtenir une vue d’ensemble des scénarios, des composants et des concepts de la Gestion des API, consultez Qu’est-ce que Gestion des API Azure ?
Pour plus d’informations sur les niveaux et fonctionnalités du service de gestion des API, consultez :
Rôle de la passerelle
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.
Plus précisément, la passerelle :
- Agit comme une façade pour les services principaux en acceptant les appels d’API et en les acheminant vers les back-ends appropriés
- Vérifie les clés API et d’autres informations d’identification, comme les jetons JWT et les certificats présentés avec les requêtes
- Applique des quotas d’utilisation et des limites de débit
- transforme facultativement les demandes et les réponses, comme indiqué dans les instructions de stratégie ;
- Si configuré, met en cache les réponses pour améliorer la latence des réponses et réduire la charge sur les services back-end
- Émet des journaux, des métriques et des rapports des appels de procédure pour la surveillance, des rapports et une résolution des problèmes
Notes
Toutes les requêtes adressées à la passerelle Gestion des API, y compris celles rejetées par les configurations de stratégie, sont comptabilisées dans les limites de débit configurées, les quotas et les limites de facturation si elles sont appliquées au niveau du service.
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. Une passerelle managée autonome peut également être associée à un espace de travail dans une instance gestion des API. 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.
Remarque
Du fait des différences dans l’architecture de service sous-jacente, les passerelles fournies dans les différents niveaux de service de gestion des API présentent des différences dans les fonctionnalités. Pour plus d’informations, consultez la section Comparaison des fonctionnalités : Passerelles managées et auto-hébergées.
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 disponible dans certains niveaux de service. 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.
La passerelle auto-hébergée est empaquetée sous forme de conteneur Docker basé sur Linux et est généralement déployée sur Kubernetes, y compris sur Azure Kubernetes Service et Kubernetes avec Azure Arc.
Chaque passerelle auto-hébergée est associée à une ressource de passerelle dans une instance de Gestion des API cloud à partir de laquelle elle reçoit des mises à jour de configuration et communique l’état.
Comparaison des fonctionnalités : Passerelles managées et auto-hébergées
Les tableaux suivants comparent les fonctionnalités disponibles dans les passerelles de gestion des API suivantes :
- Classique : Passerelle managée disponible dans les niveaux de service Développeur, Essentiel, Standard et Premium (anciennement regroupés en tant que niveaux dédiés)
- V2 : Passerelle managée disponible dans les niveaux Essentiel v2 et Standard v2
- Consommation : Passerelle managée disponible dans le niveau Consommation
- Auto-hébergé : Passerelle auto-hébergée facultative disponible dans certains niveaux de service
- Espace de travail : passerelle managée disponible dans un espace de travail dans certains niveaux de service
Remarque
- Certaines fonctionnalités des passerelles managées et auto-hébergées sont prises en charge uniquement dans certains niveaux de service ou avec certains environnements de déploiement pour les passerelles auto-hébergées.
- Pour les fonctionnalités actuelles prises en charge de la passerelle auto-hébergée, vérifiez que vous avez effectué la mise à niveau vers la dernière version majeure de l’image conteneur de la passerelle auto-hébergée.
- Consultez également les limitations de la passerelle auto-hébergée.
Infrastructure
Prise en charge des fonctionnalités | Classique | V2 | Consommation | Auto-hébergé | Espace de travail |
---|---|---|---|---|---|
Domaines personnalisés | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Cache intégré | ✔️ | ✔️ | ❌ | ❌ | ✔️ |
Cache compatible Redis externe | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Injection sur le réseau virtuel | Développeur, Premium | ❌ | ❌ | ✔️1,2 | ✔️ |
Points de terminaison privés entrants | Développeur, De base, Standard, Premium | ❌ | ❌ | ❌ | ❌ |
Intégration d’un réseau virtuel sortant | ❌ | Standard V2 | ❌ | ❌ | ✔️ |
Zones de disponibilité | Premium | ✔️3 | ❌ | ✔️1 | ✔️3 |
Déploiement multi-régions | Premium | ❌ | ❌ | ✔️1 | ❌ |
Certificats racines d’autorité de certification pour la validation des certificats | ✔️ | ✔️ | ❌ | ✔️4 | ❌ |
Certificats de domaine managé | Développeur, De base, Standard, Premium | ❌ | ✔️ | ❌ | ❌ |
Paramètres TLS | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
HTTP/2 (client vers passerelle) | ✔️5 | ✔️5 | ❌ | ✔️ | ❌ |
HTTP/2 (passerelle vers back-end) | ❌ | ❌ | ❌ | ✔️ | ❌ |
Détection des menaces contre l’API avec Defender pour les API | ✔️ | ✔️ | ❌ | ❌ | ❌ |
1 Dépend de la façon dont la passerelle est déployée, mais tient de la responsabilité du client.
2 Un point de terminaison de configuration Connectivité à la passerelle auto-hébergée v2 nécessite une résolution DNS du nom d’hôte du point de terminaison.
3 Deux zones sont activées par défaut ; non configurables.
4 Les certificats racine d’autorité de certification pour la passerelle auto-hébergée sont gérés séparément par passerelle
5 Le protocole client doit être activé.
API de back-end
Prise en charge des fonctionnalités | Classique | V2 | Consommation | Auto-hébergé | Espace de travail |
---|---|---|---|---|---|
Spécification OpenAPI | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Spécification WSDL | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Spécification WADL | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Application logique | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
App Service | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Application de fonction | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Application de conteneur | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Service Fabric | Développeur, Premium | ❌ | ❌ | ❌ | ❌ |
GraphQL Pass-through | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
GraphQL synthétique | ✔️ | ✔️ | ✔️1 | ✔️1 | ❌ |
WebSocket Pass-through | ✔️ | ✔️ | ❌ | ✔️ | ❌ |
gRPC avec authentification directe | ❌ | ❌ | ❌ | ✔️ | ❌ |
OData | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Azure OpenAI | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Disjoncteur dans le back-end | ✔️ | ✔️ | ❌ | ✔️ | ✔️ |
Pool de back-end à charge équilibrée | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 Les abonnements synthétiques GraphQL (préversion) ne sont pas pris en charge.
Stratégies
Les passerelles managées et auto-hébergées prennent en charge toutes les stratégies disponibles dans les définitions de stratégie avec les exceptions suivantes.
Prise en charge des fonctionnalités | Classique | V2 | Consommation | Auto-hébergé1 | Espace de travail |
---|---|---|---|---|---|
Intégration de Dapr | ❌ | ❌ | ❌ | ✔️ | ❌ |
Résolveurs GraphQL et validation GraphQL | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Obtenir le contexte d’autorisation | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Quotas et limites de débit | ✔️ | ✔️2 | ✔️3 | ✔️4 | ✔️ |
1 Les stratégies configurées qui ne sont pas prises en charge par la passerelle auto-hébergée sont ignorées pendant l’exécution de la stratégie.
2 La stratégie de quota par clé n’est pas disponible dans les niveaux v2.
3 Les stratégies de limite de taux par clé, de quota par clé et de limite de jetons Azure OpenAI ne sont pas disponibles dans le niveau Consommation.
4 Dans une passerelle auto-hébergée, les nombres limites de taux peuvent être configurés pour être synchronisés localement (entre les instances de passerelle sur les nœuds de cluster), par exemple par le biais d’un déploiement de graphique Helm pour Kubernetes ou à l’aide des modèles de déploiement du Portail Azure. Toutefois, les nombres limites de débit ne se synchronisent pas avec d’autres ressources de passerelle configurées dans l’instance Gestion des API, notamment la passerelle managée dans le cloud. En savoir plus
Monitoring
Pour plus d’informations sur les options de surveillance, consultez Observabilité dans Gestion des API Azure.
Prise en charge des fonctionnalités | Classique | V2 | Consommation | Auto-hébergé | Espace de travail |
---|---|---|---|---|---|
Analytique des API | ✔️ | ✔️1 | ❌ | ❌ | ❌ |
Application Insights | ✔️ | ✔️ | ✔️ | ✔️2 | ✔️ |
Journalisation via Event Hubs | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Mesures dans Azure Monitor | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Collecteur OpenTelemetry | ❌ | ❌ | ❌ | ✔️ | ❌ |
Journaux des demandes dans Azure Monitor et Log Analytics | ✔️ | ✔️ | ❌ | ❌3 | ❌ |
Métriques et journaux locaux | ❌ | ❌ | ❌ | ✔️ | ❌ |
Suivi des requêtes | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 Les niveaux v2 prennent en charge l’analyse basée sur Azure Monitor.
2 La passerelle utilise la mémoire tampon intégrée d’Azure Application Insight et ne fournit pas de garanties de remise.
3 La passerelle auto-hébergée n’envoie actuellement pas de journaux de ressources (journaux de diagnostics) à Azure Monitor. Éventuellement, vous pouvez envoyer des métriques à Azure Monitor ou configurer et conserver des journaux localement à l’emplacement où la passerelle auto-hébergée est déployée.
Authentification et autorisation
Les passerelles gérées et auto-hébergées prennent en charge toutes les options d’authentification et d’autorisation d’API disponibles, avec les exceptions suivantes.
Prise en charge des fonctionnalités | Classique | V2 | Consommation | Auto-hébergé | Espace de travail |
---|---|---|---|---|---|
Gestionnaire d’informations d’identification | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Débit et mise à l’échelle de la passerelle
Important
Le débit est affecté par le nombre et le taux de connexions clientes simultanées, le type et le nombre de stratégies configurées, les tailles de charge utile, les performances de l’API back-end et d’autres facteurs. Le débit de la passerelle auto-hébergée dépend également de la capacité de calcul (processeur et mémoire) de l’hôte où elle s’exécute. Effectuez des tests de charge de passerelle à l’aide de conditions de production anticipées pour déterminer le débit attendu avec précision.
Passerelle managée
Pour obtenir un débit de passerelle maximal estimé dans les niveaux de service Gestion des API, consultez Tarification du service Gestion des API.
Important
Les chiffres de débit sont présentés uniquement à titre d’information et ne doivent pas être pris en compte pour la planification de capacité et budgétaire. Pour plus d’informations, consultez Tarification du service Gestion des API.
Niveaux classiques
- Mettez à l’échelle la capacité de passerelle en ajoutant et en supprimant des unités d’échelle ou en mettant à niveau le niveau de service. (Mise à l’échelle non disponible dans le niveau Développeur.)
- Dans les niveaux Essentiel, Standard et Premium, configurez éventuellement la mise à l’échelle automatique d’Azure Monitor.
- Dans le niveau Premium, ajoutez et distribuez éventuellement la capacité de passerelle sur plusieurs régions.
Niveaux v2
- Mettez à l’échelle la capacité de passerelle en ajoutant et en supprimant des unités d’échelle ou en mettant à niveau le niveau de service.
Niveau de consommation
- Les instances Gestion des API dans le niveau Consommation sont automatiquement mises à l’échelle en fonction du trafic.
Passerelle auto-hébergée
- Dans des environnements tels que Kubernetes, ajoutez plusieurs réplicas de passerelle pour gérer l’utilisation attendue.
- Configurez éventuellement la mise à l’échelle automatique pour répondre aux demandes de trafic.
Passerelle d’espace de travail
Mettre à l’échelle la capacité en ajoutant et en supprimant des unités d’échelle dans la passerelle d’espace de travail.
Contenu connexe
En savoir plus sur :
- Gestion des API dans un monde hybride et multicloud
- Métrique de capacité pour les décisions de mise à l’échelle
- Fonctionnalités d’observabilité dans Gestion des API
- Fonctionnalités de la passerelle GenAI dans Gestion des API