Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’APPLIQUE À : tous les niveaux de Gestion des API
Dans cet article, vous allez apprendre à créer une connexion managée dans Gestion des API et à appeler une API GitHub qui nécessite un jeton OAuth 2.0. Cet exemple utilise le type d’octroi de code d’autorisation.
Vous apprenez à :
- Inscrire une application dans GitHub
- Configurer un fournisseur d’informations d’identification dans Gestion des API
- Configurer une connexion
- Créer une API dans Gestion des API et configurer une stratégie
- Tester votre API GitHub dans Gestion des API
Prerequisites
- Un compte GitHub.
- Instance gestion des API en cours d’exécution. Si vous en avez besoin, créez une instance Gestion des API Azure.
- Activez une identité managée affectée par le système pour Gestion des API dans l’instance Gestion des API.
Étape 1 : Inscrire une application dans GitHub
Créez une application OAuth GitHub pour l’API et accordez-lui les autorisations appropriées pour les demandes que vous souhaitez appeler.
Connectez-vous à GitHub.
Dans votre profil de compte, accédez à Paramètres > Paramètres du développeur > Applications OAuth. Sélectionnez Nouvelle application OAuth.
- Entrez un nom d’application et une URL de page d’accueil pour l’application. Pour cet exemple, vous pouvez fournir une URL de remplacement telle que
http://localhost. - Si vous le souhaitez, ajoutez une description d’application.
- Dans l’URL de rappel d’autorisation (URL de redirection), entrez
https://authorization-manager.consent.azure-apim.net/redirect/apim/<YOUR-APIM-SERVICENAME>, en remplaçant le nom de l’instance Gestion des API où vous configurez le fournisseur d’informations d’identification. - Si vous le souhaitez, sélectionnez Activer le flux d’appareil (non requis pour cet exemple).
- Entrez un nom d’application et une URL de page d’accueil pour l’application. Pour cet exemple, vous pouvez fournir une URL de remplacement telle que
Sélectionnez Inscrire l’application.
Dans la page Général , copiez l’ID client que vous utilisez à l’étape 2.
Sélectionnez Générer une nouvelle clé secrète client. Copiez le secret, qui n’est pas affiché à nouveau. Vous configurez le secret à l’étape 2.
Étape 2 : Configurer un fournisseur d’informations d’identification dans Gestion des API
Connectez-vous au portail Azure et accédez à votre instance Gestion des API.
Dans le menu de gauche, sélectionnez APIs>Gestionnaire d'identifiants>+ Créer.
Dans Créer un fournisseur d’informations d’identification, entrez les paramètres suivants :
Paramètres Valeur Nom du fournisseur d’informations d’identification Nom de votre choix, tel que github-01 Fournisseur d’identité Sélectionner GitHub Type d’octroi Sélectionner le code d’autorisation ID du client Collez la valeur que vous avez copiée précédemment à partir de l'enregistrement de l’application Clé secrète client Collez la valeur que vous avez copiée précédemment à partir de l'enregistrement de l’application Étendue Pour cet exemple, définissez l’étendue sur User Cliquez sur Créer.
Lorsque vous y êtes invité, passez en revue l’URL de redirection OAuth affichée, puis sélectionnez Oui pour confirmer qu’elle correspond à l’URL que vous avez entrée dans l’inscription de l’application GitHub.
Étape 3 : Configurer une connexion
Sous l’onglet Connexion , effectuez les étapes de votre connexion au fournisseur.
Note
Lorsque vous configurez une connexion, gestion des API par défaut configure une stratégie d’accès qui permet l’accès par l’identité managée affectée par les systèmes de l’instance. Cet accès est suffisant pour cet exemple. Vous pouvez ajouter des stratégies d’accès supplémentaires en fonction des besoins.
- Entrez un nom de connexion, puis sélectionnez Enregistrer.
- Sous l’étape 2 : Connectez-vous à votre connexion (pour le type d’octroi de code d’autorisation), sélectionnez le bouton Connexion . Effectuez les étapes avec votre fournisseur d’identité pour autoriser l’accès et revenir à Gestion des API.
- À l’étape 3 : Déterminez qui aura accès à cette connexion (stratégie d’accès), le membre d’identité managée est répertorié. L’ajout d’autres membres est facultatif, selon votre scénario.
- Sélectionnez Terminer.
La nouvelle connexion apparaît dans la liste des connexions et affiche l’état Connecté. Si vous souhaitez créer une autre connexion pour le fournisseur d’informations d’identification, effectuez les étapes précédentes.
Conseil / Astuce
Utilisez le portail Azure pour ajouter, mettre à jour ou supprimer des connexions à un fournisseur d’informations d’identification à tout moment. Pour plus d’informations, consultez Configurer plusieurs connexions.
Étape 4 : Créer une API dans Gestion des API et configurer une stratégie
Connectez-vous au portail Azure et accédez à votre instance Gestion des API.
Dans le menu de gauche, sélectionnez API>API>+ Ajouter une API.
Sélectionnez HTTP et entrez les paramètres suivants, puis sélectionnez Créer.
Réglage Valeur Nom d'affichage githubuser Web service URL https://api.github.comSuffixe d’URL de l’API githubuser Accédez à la nouvelle API et sélectionnez Ajouter une opération. Entrez les paramètres suivants, puis sélectionnez Enregistrer.
Réglage Valeur Nom d'affichage getauthdata URL de GET /user
Suivez les étapes précédentes pour ajouter une autre opération avec les paramètres suivants.
Réglage Valeur Nom d'affichage getauthfollowers URL de GET /utilisateur/abonnes Sélectionnez Toutes les opérations. Dans la section Traitement entrant , sélectionnez l’icône (</>) (éditeur de code).
Copiez et collez le code suivant dans l’éditeur de stratégie. Assurez-vous que les valeurs
provider-idetauthorization-idde laget-authorization-contextstratégie correspondent respectivement aux noms du fournisseur d’informations d’identification et de la connexion que vous avez configurés dans les étapes précédentes. Cliquez sur Enregistrer.<policies> <inbound> <base /> <get-authorization-context provider-id="github-01" authorization-id="first-connection" context-variable-name="auth-context" identity-type="managed" ignore-error="false" /> <set-header name="Authorization" exists-action="override"> <value>@("Bearer " + ((Authorization)context.Variables.GetValueOrDefault("auth-context"))?.AccessToken)</value> </set-header> <set-header name="User-Agent" exists-action="override"> <value>API Management</value> </set-header> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies>
La définition de stratégie précédente se compose de trois parties :
- La stratégie get-authorization-context récupère un jeton d’autorisation en référençant le fournisseur d’informations d’identification et la connexion que vous avez créés précédemment.
- La première stratégie set-header crée un en-tête HTTP avec le jeton d’autorisation récupéré.
- La deuxième stratégie set-header crée un
User-Agenten-tête (exigence de l’API GitHub).
Étape 5 : Tester l’API
Sous l’onglet Test , sélectionnez une opération que vous avez configurée.
Sélectionnez Envoyer.
Une réponse réussie retourne les données utilisateur de l’API GitHub.
Contenu connexe
- En savoir plus sur les stratégies d’authentification et d’autorisation
- En savoir plus sur l’API REST de GitHub