Configurer le gestionnaire d’informations d’identification – API GitHub
S’APPLIQUE À : tous les niveaux de Gestion des API
Dans cet article, vous apprenez à créer une connexion managée dans Gestion des API, et à appeler une API GitHub qui nécessite un jeton OAuth 2.0. Le type d’autorisation par code d’autorisation est utilisé dans cet exemple.
Vous allez apprendre à effectuer les actions suivantes :
- 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
Prérequis
- Un compte GitHub est requis.
- Une instance Gestion des API en cours d’exécution. Si nécessaire, créez une instance Gestion des API Azure.
- Activez une identité managée affectée par le système pour API Management 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 voulez appeler.
Se connecter à 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 d’espace réservé, telle que
http://localhost
. - Si vous le souhaitez, ajoutez une description d’application.
- Dans URL de rappel d’autorisation (URL de redirection), entrez
https://authorization-manager.consent.azure-apim.net/redirect/apim/<YOUR-APIM-SERVICENAME>
en indiquant le nom de l’instance Gestion des API dans laquelle vous allez configurer le fournisseur d’informations d’identification.
- Entrez un nom d’application et une URL de page d’accueil pour l’application. Pour cet exemple, vous pouvez fournir une URL d’espace réservé, telle que
Sélectionnez Register application (Inscrire l’application).
Dans la page Général, copiez l’ID client que vous allez utiliser à l’étape 2.
Sélectionnez Générer un nouvelle clé secrète client. Copiez le secret, qui ne sera plus affiché mais dont vous allez vous servir à l’étape 2.
Étape 2 : Configurer un fournisseur d’informations d’identification dans Gestion des API
Connectez-vous au portail et accédez à votre instance Gestion des API.
Dans le menu de gauche, sélectionnez Gestionnaire d’informations d’identification>+ Créer.
Dans la page 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électionnez GitHub. Type d’autorisation Sélectionnez Code d’autorisation. ID client Collez la valeur que vous avez copiée précédemment à partir de l’inscription de l’application Clé secrète client Collez la valeur que vous avez copiée précédemment à partir de l’inscription de l’application Portée Pour cet exemple, définissez l’étendue sur Utilisateur Sélectionnez Créer.
Quand 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 lors de l’inscription de l’application.
Étape 3 : Configurer une connexion
Sous l’onglet Connexion, effectuez les étapes pour configurer votre connexion au fournisseur.
Remarque
Quand vous configurez une connexion, le service Gestion des API configure par défaut une stratégie d’accès qui permet l’accès par l’identité managée affectée par le système de l’instance. Cet accès est suffisant pour cet exemple. Vous pouvez ajouter des stratégies d’accès supplémentaires en fonction de vos besoins.
- Entrez un nom de connexion, puis sélectionnez Enregistrer.
- Sous Étape 2 : Se connecter à votre connexion (pour le type d’autorisation de code d’autorisation), sélectionnez le lien pour vous connecter au fournisseur d’informations d’identification. Effectuez les étapes pour autoriser l’accès, puis retournez à Gestion des API.
- Sous Étape 3 : Déterminer 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.
- Cliquez sur Terminer.
La nouvelle connexion apparaît dans la liste des connexions et présente 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
Utilisez le portail pour ajouter, mettre à jour ou supprimer des connexions à un fournisseur d’informations d’identification à tout moment. Pour plus d’informations, consultez l’article Configurer plusieurs connexions.
Étape 4 : Créer une API dans Gestion des API et configurer une stratégie
Connectez-vous au portail et accédez à votre instance Gestion des API.
Dans le menu de gauche, sélectionnez API > + Ajouter une API.
Sélectionnez HTTP ou saisissez les paramètres suivants. Sélectionnez ensuite Créer.
Paramètre Valeur Nom complet githubuser URL du service web https://api.github.com
Suffixe de l’URL de l’API githubuser Accédez à l’API nouvellement créée et sélectionnez Ajouter une opération. Entrez les paramètres suivants et sélectionnez Enregistrer.
Paramètre Valeur Nom complet getauthdata URL pour GET /user Suivez les étapes précédentes pour ajouter une autre opération avec les paramètres suivants.
Paramètre Valeur Nom complet getauthfollowers URL pour GET /user/followers Sélectionnez Toutes les opérations. Dans la section Traitement entrant, sélectionnez l’icône Éditeur de code (</>).
Copiez-collez le code suivant dans l’éditeur de stratégie. Vérifiez que les valeurs
provider-id
etauthorization-id
dans la stratégieget-authorization-context
correspondent aux noms du fournisseur d’informations d’identification et de la connexion, respectivement, que vous avez configurés dans les étapes précédentes. Sélectionnez 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 extrait 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 extrait.
- La seconde stratégie set-header crée un en-tête
User-Agent
(condition demandée par 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 renvoie 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