Ćwiczenie — wywoływanie interfejsu API za pomocą klucza subskrypcji
Klucz subskrypcji jest jednym ze sposobów ograniczenia dostępu do interfejsu API.
W przykładzie firmy obuwniczej firma NorthWind Shoes współpracuje z dostawcą i chce, aby miał on bezpośredni dostęp do interfejsu API spisu towarów. Dostęp partnera musi być ograniczony przy użyciu klucza subskrypcji dla wszystkich wywołań interfejsu API.
W tym miejscu uzyskasz klucz subskrypcji dla interfejsu API. Następnie przetestujesz dostęp do interfejsu API przy użyciu klucza subskrypcji i bez go.
Uzyskiwanie klucza subskrypcji
Partnerzy otrzymują swój klucz w ramach procesu dołączania. W tym ćwiczeniu dodasz subskrypcję specjalnie dla interfejsu API NorthWindShoes. Po utworzeniu klucza należy postępować zgodnie ze standardowym procesem używania klucza w wywołaniach interfejsu API.
W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Wszystkie zasoby, a następnie wybierz wystąpienie usługi API Management.
W okienku menu po lewej stronie w obszarze Interfejsy API wybierz pozycję Subskrypcje.
Wybierz pozycję + Subskrypcja i wprowadź następujące wartości dla każdego ustawienia. Następnie wybierz Utwórz.
Ustawienie Wartość Imię i nazwisko/nazwa NorthWind
Display name NorthWind subscription
Scope Wybierz pozycję INTERFEJS API, a następnie wybierz pozycję NorthWindShoes Products z listy rozwijanej. Wybierz menu kontekstowe (...) dla subskrypcji Northwind, a następnie wybierz pozycję Pokaż/ukryj klucze.
Wybierz przycisk Kliknij, aby skopiować klucz podstawowy.
Zapisz gdzieś ten klucz, na przykład w Notatniku.
Używanie klucza subskrypcji w wywołaniu interfejsu API
Następnym krokiem jest użycie klucza subskrypcji w celu przetestowania dostępu dewelopera do opublikowanego interfejsu API.
Uruchom następujące polecenie w usłudze Cloud Shell, aby uzyskać dostęp do operacji Products w interfejsie API, zastępując
<apim gateway>
ciąg nazwą bramy.curl https://<apim gateway>.azure-api.net/api/Products
Otrzymasz komunikat 401 Odmowa dostępu z powodu braku klucza subskrypcji.
Teraz powtórz żądanie curl, tym razem z kluczem subskrypcji.
Uruchom następujące polecenie w usłudze Cloud Shell, zastępując
<primary key>
ciąg zapisanym wcześniej kluczem i zastępując<apim gateway>
ciąg nazwą bramy.curl --header "Ocp-Apim-Subscription-Key: <primary key>" https://<apim gateway>.azure-api.net/api/Products
Teraz dostęp do interfejsu API powinien być możliwy, a w konsoli powinna zostać wyświetlona lista produktów.