Anropa ett API med en prenumerationsnyckel

Slutförd

När du publicerar ett API vill du vanligtvis ha någon nivå av kontroll över vem som ska ha åtkomst till API:et via gatewayen. Prenumerationsnycklar är ett sätt att begränsa åtkomsten till ett API.

Här får du lära dig hur du använder prenumerationsnycklar för att skydda dina API:er.

Prenumerationer och nycklar

Du kan skydda dina API:er genom att använda en prenumerationsnyckel.

Kommentar

I PRODUKTIONS-API Management-miljöer kombinerar du vanligtvis en prenumerationsnyckel med andra mekanismer för att skydda dina API:er från obehörig användning, till exempel certifikatautentisering eller OAuth 2.0-auktorisering. Dessa ligger utanför omfånget för den här modulen.

En prenumerationsnyckel är en unik autogenererad sträng som skickas i sidhuvudena för klientbegäran eller som en frågesträng i URL:en. Nyckeln är direkt relaterad till en prenumeration, som kan begränsas till olika områden, vilket ger detaljerad kontroll över behörigheter och principer. De viktigaste prenumerationsomfången är:

  • Alla API:er
  • Ett enda API
  • En produkt

Ett program som anropar ett skyddat API måste inkludera nyckeln i begäran.

Du kan återskapa dessa prenumerationsnycklar när som helst. Återskapa till exempel prenumerationsnycklar om du misstänker att en nyckel har delats med obehöriga användare.

Subscription keys.

Varje prenumeration har två nycklar, en primär och en sekundär. Om du har två nycklar blir det enklare när du behöver återskapa en nyckel. Om du till exempel vill ändra den primära nyckeln och undvika avbrott kan du använda den sekundära nyckeln i dina appar.

Du måste ange en nyckel när du anropar API:er i produkter där prenumerationer har aktiverats. Som utvecklare kan du hämta en nyckel genom att skicka en prenumerationsbegäran. Den här processen är en viktig del av API Management-arbetsflödet.

Kommentar

Att skapa nya användare och ge dem sina prenumerationsnycklar så att de kan komma åt API:et är en viktig del av API Management-arbetsflödet, men ligger utanför omfånget för den här modulen.

Anropa ett API med en prenumerationsnyckel

Program måste ha en giltig nyckel i alla HTTP-begäranden när de anropar API-slutpunkter som skyddas av en prenumeration. Nycklar kan skickas i begärandehuvudet eller som en frågesträng i URL:en.

Standardnamnet för huvudet är Ocp-Apim-Subscription-Key, och standardfrågesträngen är subscription-key.

Om du vill testa dina API-anrop kan du använda utvecklarportalen (om den är tillgänglig på tjänstnivån), ett kommandoradsverktyg som curl eller andra verktyg som Postman.

Här är ett exempel på en GET-begäran som skickar en nyckel i begärandehuvudet med hjälp av curl-kommandot :

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

Här är ett exempel på ett curl-kommando som skickar en nyckel i URL som en frågesträng:

curl https://<apim gateway>.azure-api.net/api/path?subscription-key=<key string>

Om nyckeln inte skickas i huvudet eller som en frågesträng i URL:en får du svaret 401 Åtkomst nekad från API-gatewayen.