Övning – Anropa ett API med en prenumerationsnyckel

Slutförd

En prenumerationsnyckel är ett sätt att begränsa åtkomsten till ett API.

I exemplet med skoföretaget samarbetar NorthWind Shoes med en leverantör och vill att de ska ha direkt åtkomst till inventerings-API:t. Partneråtkomst måste begränsas med hjälp av en prenumerationsnyckel för alla anrop till API:et.

Här hämtar du en prenumerationsnyckel för ditt API. Sedan testar du åtkomsten till API:et med och utan prenumerationsnyckeln.

Hämta prenumerationsnyckel

Partner får nyckeln som en del av välkomstprocessen. I den här övningen lägger du till en prenumeration specifikt för NorthWindShoes-API:et. När du har en nyckel följer du en standardprocess för att använda nyckeln i API-anrop.

  1. På menyn i Azure-portalen eller på sidan Start väljer du Alla resurser och sedan din API Management-instans.

  2. I det vänstra menyfönstret går du till API:er och väljer Prenumerationer.

  3. Välj + Prenumeration och ange följande värden för varje inställning. Välj sedan Skapa.

    Inställning Värde
    Namn NorthWind
    Display name NorthWind subscription
    Definitionsområde Välj API och välj sedan NorthWindShoes Products i listrutan.
  4. Välj snabbmenyn (...) för Northwind-prenumerationen och välj sedan Visa/dölj nycklar.

  5. Välj knappen Klicka för att kopiera för PRIMÄRNYCKEL.

  6. Spara nyckeln någonstans, till exempel i Anteckningar.

Använda prenumerationsnyckeln i ett API-anrop

Nästa steg är att använda prenumerationsnyckeln för att testa utvecklaråtkomsten till ditt publicerade API.

  1. Kör följande kommando i Cloud Shell för att komma åt produktåtgärden i api:et och ersätt <apim gateway> med namnet på din gateway.

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

    Du får ett meddelande om 401, Åtkomst nekad på grund av att prenumerationsnyckeln saknas.

  2. Upprepa nu curl-begäran, den här gången inklusive din prenumerationsnyckel.

  3. Kör följande kommando i Cloud Shell, ersätt <primary key> med nyckeln du sparade tidigare och ersätt <apim gateway> med namnet på din gateway.

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

    Nu ska du ha åtkomst till API:et och se en lista över produkter som returnerats till konsolen.