Partager via


Configurer le gestionnaire d’informations d’identification - API GitHub

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

É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.

  1. Connectez-vous à GitHub.

  2. Dans votre profil de compte, accédez à Paramètres > Paramètres du développeur > Applications OAuth. Sélectionnez Nouvelle application OAuth.

    Capture d’écran de l’inscription d’une nouvelle application OAuth dans GitHub.

    1. 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.
    2. Si vous le souhaitez, ajoutez une description d’application.
    3. 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.
    4. Si vous le souhaitez, sélectionnez Activer le flux d’appareil (non requis pour cet exemple).
  3. Sélectionnez Inscrire l’application.

  4. Dans la page Général , copiez l’ID client que vous utilisez à l’étape 2.

  5. 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.

    Capture d’écran montrant comment obtenir l’ID client et la clé secrète client pour l’application dans GitHub.

Étape 2 : Configurer un fournisseur d’informations d’identification dans Gestion des API

  1. Connectez-vous au portail Azure et accédez à votre instance Gestion des API.

  2. Dans le menu de gauche, sélectionnez APIs>Gestionnaire d'identifiants>+ Créer.

    Capture d’écran de la création d’informations d’identification gestion des API dans le portail Azure.

  3. 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
  4. Cliquez sur Créer.

  5. 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.

  1. Entrez un nom de connexion, puis sélectionnez Enregistrer.
  2. 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.
  3. À 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.
  4. 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

  1. Connectez-vous au portail Azure et accédez à votre instance Gestion des API.

  2. Dans le menu de gauche, sélectionnez API>API>+ Ajouter une API.

  3. 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.com
    Suffixe d’URL de l’API githubuser
  4. 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

    Capture d’écran de l’ajout d’une opération getauthdata à l’API dans le portail.

  5. 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
  6. Sélectionnez Toutes les opérations. Dans la section Traitement entrant , sélectionnez l’icône (</>) (éditeur de code).

  7. Copiez et collez le code suivant dans l’éditeur de stratégie. Assurez-vous que les valeurs provider-id et authorization-id de la get-authorization-context straté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-Agent en-tête (exigence de l’API GitHub).

Étape 5 : Tester l’API

  1. Sous l’onglet Test , sélectionnez une opération que vous avez configurée.

  2. Sélectionnez Envoyer.

    Capture d’écran du test réussi de l'API dans le portail.

    Une réponse réussie retourne les données utilisateur de l’API GitHub.