Exercice : Appeler une API avec une clé d’abonnement

Effectué

Une clé d’abonnement est l’une des méthodes permettant de restreindre l’accès à une API.

Dans l’exemple d’entreprise de vente de chaussures, NorthWind Shoes travaille avec un fournisseur et veut qu’il accède directement à l’API Inventory. Les accès du partenaire doivent être limités à l’aide d’une clé d’abonnement pour tous les appels à l’API.

Vous obtenez ici une clé d’abonnement pour votre API. Ensuite, vous allez tester l’accès à l’API avec et sans la clé d’abonnement.

Obtenir la clé d’abonnement

Les partenaires reçoivent leur clé dans le cadre d’un processus d’intégration. Dans cet exercice, vous ajoutez un abonnement spécifiquement pour l’API NorthWindShoes. Une fois que vous disposez d’une clé, suivez la procédure standard pour l’utiliser dans les appels d’API.

  1. Dans le menu du portail Azure ou dans la page Accueil, sélectionnez Toutes les ressources, puis votre instance de Gestion des API.

  2. Dans le volet du menu de gauche, sous API, sélectionnez Abonnements.

  3. Sélectionnez + Abonnement et entrez les valeurs suivantes pour chaque paramètre. Sélectionnez ensuite Créer.

    Paramètre Valeur
    Name NorthWind
    Nom complet NorthWind subscription
    Étendue Sélectionnez API, puis sélectionnez Produits NorthWindShoes dans la liste déroulante.
  4. Sélectionnez le menu contextuel (...) pour l’abonnement Northwind, puis sélectionnez Afficher/masquer les clés.

  5. Sélectionnez le bouton Cliquer pour copier pour la CLÉ PRINCIPALE.

  6. Enregistrez-la quelque part, par exemple avec le Bloc-notes.

Utiliser une clé d’abonnement dans un appel d’API

L’étape suivante consiste à utiliser la clé d’abonnement pour tester l’accès développeur à votre API publiée.

  1. Exécutez la commande suivante dans Cloud Shell pour accéder à l’opération Products dans votre API, en remplaçant <apim gateway> par le nom de votre passerelle.

    curl https://<apim gateway>.azure-api.net/api/Products
    

    Vous obtenez un message 401, Accès refusé en raison de l’absence de la clé d’abonnement.

  2. Répétez maintenant votre requête curl, mais cette fois en y incluant votre clé d’abonnement.

  3. Exécutez la commande suivante dans Cloud Shell, en remplaçant <primary key> par la clé que vous avez enregistrée plus tôt et en remplaçant <apim gateway> par le nom de votre passerelle.

    curl --header "Ocp-Apim-Subscription-Key: <primary key>" https://<apim gateway>.azure-api.net/api/Products
    

    Vous devez maintenant pouvoir accéder à l’API et voir une liste des produits retournée à la console.