Qu’est-ce que Gestion des API Azure ?

Effectué

Commençons par une rapide vue d’ensemble de Gestion des API Azure et de ses fonctionnalités de base. Cette vue d’ensemble doit vous aider à déterminer si Gestion des API Azure peut être une solution appropriée pour réduire la complexité des API de votre entreprise.

Qu’est-ce que la gestion du cycle de vie d’une API ?

La gestion du cycle de vie d’une API est le processus qui consiste à administrer une API tout au long de sa durée de vie, de sa conception à son retrait, en passant par sa création et son obsolescence. Dans le cadre de ce module, nous supposons que vos API ont déjà été conçues, programmées et déployées. Concentrons-nous sur le reste des tâches de la gestion du cycle de vie d’une API, notamment :

  • Fourniture de la documentation de l’API, des tests et des exemples de code
  • Intégration et désintégration des utilisateurs
  • Gestion des abonnements d’API et distribution des clés d’abonnement
  • Implémentation de révisions d’API de manière contrôlée et sécurisée
  • Gestion de plusieurs versions d’une API
  • Implémentation de contrôles d’accès d’API, tels que l’authentification et les limites de débit d’appels
  • Fourniture de rapports d’API pour l’utilisation, les erreurs, etc.
  • Gestion de l’analytique pour votre entreprise et pour les développeurs qui utilisent les API

Définition de Gestion des API Azure

Gestion des API Azure est un service cloud qui vous offre une plateforme pour la publication, la sécurisation, la maintenance et l’analyse de toutes les API de votre entreprise. Gestion des API Azure effectue ces tâches en proposant trois composants principaux :

  • Passerelle
  • Interface d’administration
  • Portail des développeurs

Les principaux composants de Gestion des API Azure incluent l’interface d’administration, la passerelle et le portail des développeurs.

Important

Gestion des API Azure n’héberge pas vos API réelles ; celles-ci demeurent là où elles ont été déployées à l’origine. Au lieu de cela, Gestion des API Azure agit comme une sorte de façade ou « porte d’entrée » pour vos API. De cette façon, Gestion des API Azure dissocie vos API en vous permettant de définir des stratégies d’API et d’autres options de gestion dans Azure sans toucher à vos API back-end déployées.

Passerelle

La passerelle de Gestion des API Azure est un point de terminaison Azure qui accepte tous les appels de toutes vos API. La passerelle :

  • Vérifie les clés d’abonnement d’API et autres informations d’identification
  • Applique vos quotas d’utilisation et limites de débit
  • Transforme l’API en fonction des besoins en matière de compatibilité back-end
  • Route chaque appel vers son serveur back-end approprié
  • Met en cache les réponses back-end
  • Collecte les métadonnées des appels pour les charges de travail analytiques

Interface d’administration

L’interface d’administration de Gestion des API Azure est un ensemble d’outils et de pages du portail Azure qui vous permettent d’administrer vos API et votre service. Outre à des fins de provisionnement, de mise à l’échelle et de supervision du service, vous utilisez l’interface d’administration pour :

  • Définition ou importation de spécifications d’API
  • Implémentation de stratégies d’utilisation telles que les quotas et les limites de débit
  • Définition de stratégies de sécurité
  • Gestion des utilisateurs
  • Empaquetage des API dans des produits
  • Définition de transformations d’API
  • Gestion des révisions et des versions d’API
  • Exécution d’analytiques sur vos métadonnées d’API

Portail des développeurs

Le portail des développeurs de Gestion des API Azure est un site web entièrement personnalisable qui permet aux développeurs d’interagir avec vos API par le biais des opérations suivantes :

  • Examen de la documentation de chaque API
  • Essai d’une API avec la console interactive
  • Examen des exemples de code dans différents langages de programmation
  • Abonnement à une API et obtention d’une clé d’abonnement à l’API.
  • Exécution d’analytiques sur l’utilisation du développeur

Niveaux de Gestion des API Azure

Gestion des API Azure fournit plusieurs niveaux de service, chacun d’eux offrant un ensemble distinct de fonctionnalités et de tarifs. Le tableau suivant liste les niveaux par prix croissant et compare certaines fonctionnalités clés.

Critères Consommation Développeur De base Standard Premium
Conçu pour Utilisation légère Évaluation, test et autre utilisation hors production Niveau d’entrée pour une utilisation en production Utilisation de production avec un volume moyen Utilisation de production d’entreprise ou avec un volume élevé
Cache Externe uniquement 10 mégaoctets (Mo) 50 Mo 1 gigaoctet (Go) 5 Go
Contrat de niveau de service (SLA) 99,95 % Aucun 99,95 % 99,95 % 99,99 %
Portail des développeurs Non Oui Oui Oui Oui
Analytique intégrée Non Oui Oui Oui Oui
Débit (demandes estimées/s) N/A 500 1 000 2 500 4 000

Notes

Le tarif du niveau Consommation est défini par appel d’API : le premier million d’appels est gratuit, puis les suivants sont facturés à un tarif fixe pour 10 000 appels. Le prix de tous les autres niveaux est par heure.

Appliquer des stratégies à des demandes et des réponses d’API

L’un des plus grands problèmes liés à la publication simultanée de plusieurs API est que chaque API nécessite un ensemble de stratégies distinct. Ici, une stratégie est un paramètre ou une action qui contrôle le comportement de l’API. Par exemple, si vous souhaitez appliquer une limite de débit (nombre maximal d’appels d’API autorisé à partir d’une seule source pendant une période donnée), vous devez inclure cette limite dans le cadre des stratégies d’une API. Une limite de débit n’est qu’un exemple et vous pouvez appliquer de nombreuses stratégies. Le défi en termes de gestion est proportionnel au nombre d’API.

Gestion des API Azure résout le problème des stratégies d’API en vous permettant de définir des stratégies pour toutes vos API dans un emplacement unique, à savoir l’interface d’administration de Gestion des API Azure. Avec Gestion des API Azure, vous pouvez définir des stratégies dans de nombreuses catégories. Une liste partielle inclut :

  • Restriction d’accès. Ces stratégies déterminent quand une demande d’API est autorisée via la passerelle. Par exemple, appliquez des limites de débit et des quotas d’utilisation, qui filtrent les adresses IP des appelants et qui vérifient la présence d’un jeton JWT (JSON Web Token) valide.
  • Authentification. Authentifiez les appels d’API, par exemple, en utilisant l’authentification de base, un certificat client ou une identité managée.
  • Mise en cache. Améliorez les performances de l’API en stockant et en récupérant les réponses dans le cache.
  • Validation. Validez les appels d’API en comparant certains paramètres au contenu de votre spécification d’API. Par exemple, validez le corps de la demande ou de la réponse, les paramètres d’en-tête de demande et les en-têtes de réponse.

Combinez en toute souplesse vos stratégies dans des définitions de stratégie, qui sont des documents XML composés d’une série d’instructions, chacune représentant une stratégie et ses paramètres. Les définitions de stratégie vous permettent de configurer des stratégies distinctes à différentes étapes du pipeline requête-réponse d’API :

La demande d’API d’un consommateur entre dans la passerelle de Gestion des API Azure, où elle passe par les stratégies de trafic entrant avant d’être envoyée au serveur back-end. La réponse d’API passe ensuite par les stratégies de trafic sortant de la passerelle avant d’être envoyée au consommateur d’API d’origine.