Modifier

Concevoir des expériences exceptionnelles pour les développeurs d’API en utilisant Gestion des API et GitHub

Azure App Service
Azure Private Link
Réseau virtuel Azure

En tant qu’éditeur d’API, il vous faut un site web qui commercialise efficacement vos API et permette aux clients de faire la différence entre les offres. Une fois que les clients ont sélectionné des API, vous devez pouvoir accorder l’accès uniquement aux utilisateurs authentifiés, gérer la consommation et fournir des factures précises. Cet exemple de scénario montre comment utiliser le service Azure et GitHub pour créer une plateforme capable de faire tout cela, et plus encore.

Architecture

Diagram of the components of this architecture and the workflow through the internet portals and Azure services that constitute the solution, including Microsoft Entra B 2 C, Azure A P I Management, the A P I gateway, and line-of-business services.

Téléchargez un fichier PowerPoint de cette architecture.

Dataflow

La solution est principalement constituée des composants suivants :

  • API de back-end monétisées et passerelle API. Au cœur de la solution se trouve l’ensemble des API de back-end qui sont monétisées. Les consommateurs, comme les utilisateurs, les applications et les appareils, accèdent à la plateforme d’API à partir d’une passerelle API. La passerelle limite les demandes et nivelle le débit selon les besoins.

  • Portail et applications pour les consommateurs. Les consommateurs de la plateforme d’API parcourent les offres d’API, s’inscrivent, puis génèrent des clés d’abonnement pour accéder aux divers points de terminaison d’API. Ils peuvent mettre à jour les informations de leurs comptes et leur facturation en utilisant les fonctionnalités de gestion de compte de la solution.

  • Portails et applications d’administration. Les administrateurs de plateforme publient la liste des produits d’API, leur prix et les plans tarifaires. Ces portails offrent également une analytique complète de l’utilisation des différents produits d’API, ce qui permet de résoudre les problèmes et d’offrir des services de support.

  • Services métier. Ces services sont nécessaires pour fournir les fonctionnalités des portails et applications consommateur, et pour prendre en charge les différents parcours utilisateur gérés par la solution.

  • Moteur de calcul de frais et suivi de la consommation des API. Les rapports de consommation des API, capturés sur la couche Passerelle API, sont exportés régulièrement dans un magasin de données distinct. Des travaux planifiés s’exécutent sur ces données pour calculer les frais qui s’appliquent à tous les comptes de consommateur, en fonction de la liste d’abonnements et du modèle tarifaire associé.

La séquence de traitement de cette solution est la suivante :

  1. L’éditeur d’API importe les spécifications d’API en utilisant le portail Azure, les regroupe par produit et les publie.

  2. L’éditeur d’API met à jour les informations marketing du produit dans le dépôt GitHub correspondant.

  3. Le consommateur d’API accède au portail de la Place de marché, parcourt les différents produits et sélectionne un service d’API spécifique.

  4. Quand le consommateur tente de voir plus d’informations sur le service d’API, le portail des consommateurs le redirige vers le portail des développeurs amélioré, qui est hébergé sur GitHub et utilise GitHub Pages.

  5. Le consommateur peut parcourir les différentes spécifications d’API, les informations sur le développeur et même essayer d’appeler un point de terminaison à partir d’un exemple de charge utile.

  6. Le consommateur s’inscrit sur la plateforme, puis active un abonnement pour le service d’API qu’il souhaite utiliser en particulier.

  7. Le consommateur utilise le service d’API dans ses applications ou appareils.

  8. L’appel de l’API génère des métriques sur son utilisation et sa consommation, qui sont stockées par Azure dans les bases de données de suivi.

  9. Les données de consommation sont régulièrement exportées et enregistrées dans une base de données personnalisée, en général un lac de données, pour pouvoir les analyser.

  10. Un travail de back-end calcule les frais à partir des données de consommation et des différents abonnements.

  11. Les informations relatives à la facture et au paiement sont stockées dans la base de données de comptabilité. Ces informations sont utilisées pour calculer le chiffre d’affaires du service.

Composants

La solution est composée des offres de software as a service (SaaS) suivantes :

  • Gestion des API Azure est une plateforme en tant que service managée qui permet aux organisations de publier des API pour les consommateurs internes et externes. Avec Gestion des API, vous pouvez publier des API hébergées n’importe où. Fondamentalement, Gestion des API permet de découpler l’hébergement d’API de la passerelle publiée qui fait office de point d’entrée unique pour l’intégralité du paysage des API publiées par votre entreprise. Pour plus d’informations, consultez Modèle de routage de passerelle.

    Gestion des API fournit une couche de gouvernance en plus de toutes les API publiées. En utilisant des stratégies Gestion des API et diverses autres fonctionnalités, comme les limites de débit et les quotas, vous pouvez limiter les demandes d’API avec une clé ou un abonnement. Gestion des API comprend un portail des développeurs qui fournit un site web entièrement personnalisable regroupant la documentation des API que vous y publiez.

  • GitHub est une offre SaaS populaire de Microsoft fréquemment utilisée par les développeurs pour créer, livrer et gérer leurs projets logiciels. Il fournit des fonctionnalités importantes que vous pouvez utiliser dans les solutions :

  • Azure App Service est une plateforme de calcul complètement managée pour l’hébergement d’applications web personnalisées.

  • Azure Active Directory B2C (Azure AD B2C) est une extension de Microsoft Entra ID qui permet à votre application de gérer l’accès et l’autorisation des identités des partenaires ou des clients externes. Vous pouvez utiliser la plateforme d’identités Microsoft pour intégrer facilement l’identité et l’autorisation dans vos applications personnalisées.

Détails du scénario

La réussite et l’adoption d’une plateforme d’API dépend en grande partie de la façon dont elle est perçue dans la Place de marché. Au-delà des ressources numériques offertes par la plateforme, c’est la facilité de recherche et d’utilisation des API qui motive les clients à utiliser la plateforme. Les clients doivent pouvoir trouver la documentation et bénéficier d’un support en cas de problème. La plateforme doit également faciliter la contribution de la communauté pour aider les clients à façonner vos API en fonction de leurs besoins. En tant qu’éditeur d’API, il vous faut un site web qui commercialise efficacement vos API et permette aux clients de faire la différence entre les offres. Une fois que les clients ont sélectionné des API, vous devez pouvoir accorder l’accès uniquement aux utilisateurs authentifiés, gérer la consommation et fournir des factures précises. Cet exemple de scénario montre comment utiliser le service Azure et GitHub pour créer une plateforme capable de faire tout cela, et plus encore.

Cas d’usage potentiels

Vous pouvez utiliser cette solution pour faciliter les tâches suivantes pour les développeurs d’API :

  • Découvrir et comprendre vos offres de produit d’API.
  • S’abonner à vos différentes applications et canaux, et les intégrer.
  • Obtenir de l’aide, résoudre et corriger les problèmes.
  • Promouvoir la contribution de la communauté, et échanger des idées et des connaissances.

Chaîne de valeur des API

Diagram that describes the A P I value chain.

En haut de la chaîne de valeur se trouve le fournisseur de services d’API. Viennent ensuite les consommateurs ou les intégrateurs d’API, qui conçoivent et créent des expériences pour les clients cibles éventuels. Les utilisateurs finaux et les clients sont les bénéficiaires finaux dans la chaîne de valeur.

Expérience des développeurs d’API

Diagram of features and capabilities of the enhanced A P I developer experience.

Téléchargez un fichier PowerPoint de ce diagramme.

L’expérience des développeurs d’API propose trois portails :

  • Portail des consommateurs. Le portail des consommateurs fait office de site web marketing pour présenter les différents produits d’API proposés par l’entreprise.

  • Portail des développeurs. Le portail des développeurs fournit aux développeurs tiers de la documentation sur les divers services d’API et comment les utiliser dans leurs applications.

  • Portail de compte. Les utilisateurs inscrits gèrent leurs abonnements et effectuent d’autres activités liées au compte à partir du portail de compte.

Spécifications fonctionnelles

De manière générale, les exigences fonctionnelles d’une plateforme d’API à l’échelle de l’entreprise sont divisées en trois catégories : la productisation, l’administration de plateforme et les expériences des consommateurs.

Diagram that shows three broad functional requirements of an enterprise-scale A P I platform.

Les sections suivantes décrivent plus en détail les caractéristiques de chaque domaine de fonctionnalité.

Productisation

L’objectif de la productisation est d’identifier et de définir les API monétisées, leur gestion et une stratégie pour les vendre sous forme de produits numériques. Par conséquent, elle couvre :

  • Des fonctionnalités comme l’identification des variantes de produits et leur mappage correspondant aux ressources physiques.
  • Une définition des tarifs et des plans tarifaires, ainsi que les métadonnées nécessaires.
  • Le contenu à créer pour guider l’expérience du consommateur.

La productisation comprend les fonctionnalités suivantes :

  • Produits d’API. Ce catalogue d’API est mis à la disposition des consommateurs. Un produit peut être proposé à l’achat ou sous forme de service gratuit.

  • Variantes. L’expérience du développeur doit identifier les variantes de tous les produits d’API monétisés.

  • Plans tarifaires. Définissez les différents plans tarifaires afin de les rendre attractifs pour les consommateurs.

  • Taxonomie et contenu. Définissez et créez le contenu (texte, PDF, images, etc.) nécessaire pour la stratégie marketing de ces produits d’API.

  • Ressources physiques. Cela comprend les services cloud réels qui font partie du produit d’API spécifique et leur gestion de cycle de vie correspondante. Tenez compte des coûts d’exploitation servant à maintenir ces services quand vous dérivez les plans tarifaires.

Administration de plateforme

L’administration de plateforme est axée sur l’hébergement, la gestion et la gouvernance en général de la plateforme d’API. Elle fournit également une solution de bout en bout pour administrer les différents services et applications métier. Les principaux domaines d’intérêt sont la gestion des abonnements et la facturation. L’administration de plateforme permet également de générer des insights et une analytique métier pour présenter l’intégrité globale du service, y compris ses aspects financiers et opérationnels.

L’administration de plateforme comprend les fonctionnalités suivantes :

  • Inscription des utilisateurs. Identifiez la façon dont les utilisateurs s’inscrivent sur la plateforme. Définissez tous les workflows d’approbation nécessaires, en fonction du segment d’utilisateur.

  • Catalogue des API. Identifiez les ressources d’API qui sont publiées en utilisant Gestion des API. Appliquez des stratégies pour contrôler l’accès et l’utilisation des API. Gérez les abonnements des utilisateurs.

  • Insights et analytique. Capturez les données de télémétrie pour générer différentes métriques. Visualisez les données avec différents tableaux de bord, comme Power BI, pour dériver les différents insights dont ont besoin les décideurs de l’entreprise et de l’informatique.

  • Facturation. Définissez les workflows liés aux abonnements, à la gestion des commandes et à la facturation.

  • Support. Mettez en place des outils et des processus pour traiter les demandes de support.

Expérience du consommateur

L’adoption de la plateforme d’API dépend fortement de la facilité avec laquelle les consommateurs peuvent :

  • Découvrir les API dont ils ont besoin.
  • Passer en revue les spécifications et le contenu technique en parcourant le portail des développeurs.
  • S’inscrire pour s’abonner.
  • Payer les produits d’API qu’ils ont sélectionnés.
  • Commencer à utiliser les API dans leurs applications.

Une expérience de consommateur est généralement fournie à travers un portail web, une application mobile ou les deux. Vous pouvez utiliser Azure AD B2C pour faciliter l’inscription des utilisateurs et la gestion des identités. Azure AD B2C prend en charge les fournisseurs d’identité OpenID, comme Microsoft et Google.

Les expériences de consommateur comprennent les composants suivants :

  • Catalogue de produits (API). Créez une expérience de Place de marché pour les utilisateurs, qu’ils soient anonymes ou inscrits.

  • Gestion des comptes et des abonnements. Mettez en place des procédures pour l’inscription et la connexion en fonction des types d’utilisateurs susceptibles d’utiliser votre API. Prenez en charge les préférences de l’utilisateur, comme l’utilisation des fournisseurs d’identité de réseaux sociaux existants. Autorisez la gestion des abonnements en libre-service, l’activation et la désactivation des services et le paiement des frais facturés.

  • Interface utilisateur / expérience utilisateur. Identifiez et définissez les expériences pour les canaux que vous prenez en charge dans l’expérience des utilisateurs finaux. Comprend des fonctionnalités multiappareils, multifacteurs de forme, ainsi qu’une conception moderne de l’interface utilisateur. Enrichissez l’expérience grâce à des études d’utilisabilité.

Considérations

Les composants de ce scénario traitent les problèmes de performances, de fiabilité et de sécurité.

Gestion des API prend en charge la mise à l’échelle automatique, qui développe rapidement les fonctionnalités de Gestion des API pour répondre au nombre croissant de demandes entrantes. Gestion des API prend également en charge la redondance interzone et les déploiements multirégions pour assurer la résilience et la haute disponibilité. Pour plus d’informations sur la redondance interzone, consultez Prise en charge des zones de disponibilité pour Gestion des API Azure. Pour plus d’informations sur la sécurité de Gestion des API, consultez Base de référence sur la sécurité Azure pour la Gestion des API.

App Service est une plateforme en tant que service complètement managée qui offre une sécurité intégrée et la mise à l’échelle automatique avec un contrat SLA assurant la haute disponibilité. App Service est conforme aux normes ISO, SOC et PCI, et prend en charge l’authentification des utilisateurs avec Microsoft Entra ID, Google, Facebook, Twitter ou un compte Microsoft. Avec App Service, vous pouvez également créer des restrictions d’adresse IP.

Azure AD B2C offre une haute disponibilité et s’adapte pour prendre en charge des centaines de millions d’utilisateurs. Azure AD B2C prend en charge OpenID Connect et plusieurs fournisseurs d’identité afin que les clients puissent choisir le fournisseur qu’ils préfèrent. Azure AD B2C prend également en charge l’authentification multifacteur basée sur une application ou sur une stratégie, qui ajoute des couches de sécurité supplémentaires. Pour plus d’informations sur Azure AD B2C, consultez Qu’est-ce qu’Azure Active Directory B2C ? Pour plus d’informations sur l’utilisation d’identités externes, consultez Identités externes dans Microsoft Entra ID.

Dans GitHub, les révisions de sécurité sont une partie automatique des révisions de code, qui analysent chaque nouvelle validation pour y rechercher les problèmes de sécurité potentiels. Ce service vous aide à découvrir les problèmes dès qu’ils sont proposés à l’ajout dans la base de code. La sécurité GitHub vous permet de personnaliser les recherches de problèmes de sécurité et d’intégrer des moteurs d’analyse tiers. Pour plus d’informations sur les fonctionnalités, consultez Security sur GitHub.

Optimisation des coûts

Vous pouvez développer le portail des consommateurs en utilisant le plan tarifaire Team ou Enterprise pour GitHub. Consultez la matrice des fonctionnalités pour identifier le plan qui convient le mieux à votre entreprise.

Pour Gestion des API, vous pouvez utiliser les niveaux Standard ou Premium. Pour mieux comprendre les différences entre les niveaux, consultez Options tarifaires de Gestion des API.

Pour Azure App Service, consultez les options tarifaires disponibles dans les environnements Windows et Linux pour l’hébergement de vos applications.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteur principal :

Étapes suivantes