Ćwiczenie — wywoływanie interfejsu API za pomocą klucza subskrypcji

Ukończone

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.

  1. W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Wszystkie zasoby, a następnie wybierz wystąpienie usługi API Management.

  2. W okienku menu po lewej stronie w obszarze Interfejsy API wybierz pozycję Subskrypcje.

  3. 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.
  4. Wybierz menu kontekstowe (...) dla subskrypcji Northwind, a następnie wybierz pozycję Pokaż/ukryj klucze.

  5. Wybierz przycisk Kliknij, aby skopiować klucz podstawowy.

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

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

  2. Teraz powtórz żądanie curl, tym razem z kluczem subskrypcji.

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