Jak działa usługa Azure API Management

Ukończone

W tym miejscu omówimy sposób działania usługi Azure API Management z trzech punktów użycia. Ta wiedza pomaga nadal oceniać, czy usługa Azure API Management jest dobrym rozwiązaniem do zarządzania interfejsami API organizacji.

W tej lekcji dowiesz się, jak działa usługa Azure API Management dla następujących typów użytkowników:

  • Użytkownicy interfejsu API
  • Dostawcy interfejsu API
  • Deweloperzy aplikacji

Jak działa usługa Azure API Management dla użytkowników interfejsu API

Użytkownik interfejsu API to jednostka, która wysyła żądanie do interfejsu API dla danych. Na przykład dowolna z tych jednostek może być użytkownikiem interfejsu API:

  • Aplikacja mobilna
  • Aplikacja sieci web
  • Urządzenie IoT

Kluczowym składnikiem usługi Azure API Management dla użytkowników jest brama. Wszystkie wywołania interfejsu API konsumentów są najpierw kierowane do punktu końcowego bramy. Użytkownicy interfejsu API nigdy nie wchodzą bezpośrednio w interakcję z bramą i nigdy nie korzystają z rzeczywistego wystąpienia wdrożenia interfejsu API.

Brama wykonuje wiele zadań z punktu widzenia konsumenta, ale najważniejsze są następujące:

  • Uwierzytelnianie. Brama monitoruje dostęp do interfejsu API, weryfikując klucze subskrypcji użytkownika, tokeny JWT i inne poświadczenia.
  • Zabezpieczenia. Brama zapobiega nieprawidłowemu używaniu interfejsu API przez wymuszanie wstępnie zdefiniowanych limitów szybkości i limitów przydziału użycia użytkowników lub weryfikowanie żądań i odpowiedzi względem schematu interfejsu API.
  • Przekształcanie. Brama przekształca żądanie interfejsu API lub odpowiedź zgodnie z potrzebami. Jeśli na przykład usługa zaplecza odpowiada danymi XML, możesz zmodernizować interfejs API, przekształcając kod XML w format JSON automatycznie, jak pokazano na poniższej ilustracji.
  • Routing. Po uwierzytelnieniu, zweryfikowaniu i przekształceniu żądania interfejsu API brama kieruje wywołanie do usługi zaplecza, w której wdrożono interfejs API.
  • Wydajność. Brama może przechowywać odpowiedź interfejsu API zaplecza w pamięci podręcznej. W sytuacjach, gdy odpowiedź zaplecza jest statyczna w czasie, obsługa kolejnych odpowiedzi z pamięci podręcznej zapewnia użytkownikom krótszy czas odpowiedzi i zmniejsza obciążenie serwera zaplecza.

Aplikacja mobilna żąda prognozy pogody przy użyciu interfejsu API. Brama usługi Azure API Management kieruje wywołanie do serwera zaplecza, a następnie konwertuje odpowiedź XML serwera na kod JSON przed zwróceniem go do aplikacji mobilnej.

Jak działa usługa Azure API Management dla dostawców interfejsów API

Jeśli jesteś dostawcą interfejsu API, nadal masz wiele pracy do wykonania po opublikowaniu interfejsów API. Ta praca obejmuje:

  • Ustawianie zasad interfejsu API
  • Zarządzanie użytkownikami interfejsu API
  • Zarządzanie poprawkami i wersjami interfejsu API
  • Monitorowanie i analizowanie interfejsów API

Wszystkie te zadania i inne można wykonać przy użyciu interfejsu administracyjnego usługi Azure API Management w witrynie Azure Portal. Lub przy użyciu narzędzi, takich jak interfejs wiersza polecenia platformy Azure lub program Azure PowerShell. Oprócz umożliwienia ustawiania zasad interfejsu API (jak pokazano w poprzedniej lekcji), interfejs administracyjny umożliwia wykonywanie następujących zadań:

  • Definiowanie i importowanie specyfikacji interfejsu API. Zaimportuj specyfikację interfejsu OpenAPI, interfejs API REST, interfejs API prostego dostępu do obiektów (SOAP), który można opcjonalnie przekonwertować na interfejs REST, interfejs API protokołu WebSocket lub interfejs API GraphQL. Interfejs API można również utworzyć, importując wystąpienia następujących usług platformy Azure: Web App, Container App, Function App, Logic App i Service Fabric. Możesz również utworzyć pusty interfejs API i zdefiniować go ręcznie.
  • Zarządzanie użytkownikami i grupami.
    • Użytkownik jest kontem dewelopera. Jest to konto użytkownika interfejsu API. Możesz dodać użytkowników ręcznie lub zaprosić użytkowników do utworzenia konta, ale większość użytkowników tworzy własne konta przy użyciu portalu dla deweloperów.
    • Grupa jest kolekcją powiązanych użytkowników. Grupę można skojarzyć z konkretnym produktem interfejsu API, a następnie każdy użytkownik w tej grupie ma dostęp do produktu w portalu deweloperów.
  • Tworzenie pakietów interfejsów API w produktach. W usłudze Azure API Management produkt jest grupą powiązanych interfejsów API. Pakując wiele interfejsów API jako pojedynczy produkt, można skonfigurować tylko produkt zamiast oddzielnie konfigurować wszystkie interfejsy API. Na przykład ustaw limity szybkości i inne zasady, zdefiniuj warunki użytkowania, dodaj grupy itd. Ta konfiguracja jest stosowana do wszystkich interfejsów API w produkcie. Po opublikowaniu produktu użytkownicy mogą go subskrybować i używać jego interfejsów API z pojedynczym kluczem subskrypcji.
  • Zarządzanie poprawkami i wersjami interfejsu API. Gdy zespół deweloperów interfejsu API musi wprowadzić zmiany w interfejsie API, uwidacznia zmianę w bezpieczny i kontrolowany sposób, który nie ma negatywnego wpływu na konsumentów przy użyciu poprawek i wersji:
    • Poprawka jest stosunkowo drobną lub niezwiązaną zmianą interfejsu API. Twój zespół programistyczny może kodować i testować poprawkę oddzielnie od produkcyjnego interfejsu API, jak na poniższej ilustracji. Następnie, gdy wersja jest gotowa dla użytkowników, użyj interfejsu administracyjnego usługi Azure API Management, aby ustawić zaktualizowany interfejs API jako bieżącą wersję.
    • Wersja jest stosunkowo główną lub powodującą niezgodność zmianą interfejsu API. Usługa Azure API Management umożliwia oferowanie deweloperom wielu wersji interfejsu API jednocześnie. Oferuje również kilka schematów przechowywania wersji, w tym oparte na ścieżkach, oparte na nagłówkach i oparte na ciągach zapytania przechowywanie wersji.
  • Monitorowanie i analizowanie interfejsów API. Interfejs administracyjny zawiera wbudowane narzędzia do monitorowania służące do śledzenia i przeglądania ruchu interfejsu API w czasie rzeczywistym oraz analizy w celu uzyskania szczegółowych informacji na temat sposobu używania opublikowanych interfejsów API przez użytkowników. Usługa Azure API Management obsługuje również kilka narzędzi platformy Azure do monitorowania interfejsów API i uruchamiania obciążeń analitycznych. Usługi platformy Azure obsługiwane przez usługę Azure API Management obejmują dzienniki usługi Azure Monitor, usługę Application Insights i usługę Event Hubs.

Przedstawienie sposobu działania poprawek w usłudze Azure API Management. Żądania interfejsu API od użytkowników są kierowane do bieżącej wersji interfejsu API, natomiast żądania interfejsu API od wewnętrznego zespołu deweloperów są kierowane do poprawki interfejsu API.

Jak działa usługa Azure API Management dla deweloperów aplikacji

Z wyjątkiem warstwy Zużycie wszystkie wystąpienia usługi Azure API Management obejmują portal dla deweloperów, w którym interfejsy API są udostępniane potencjalnym i istniejącym użytkownikom interfejsu API. Portal dla deweloperów zawiera domyślny interfejs, który można dostosować do potrzeb i znakowania organizacji.

Deweloperzy aplikacji z kontami deweloperów logują się do portalu deweloperów (który akceptuje również użytkowników-gości, którzy jeszcze nie mają konta). Deweloperzy są następnie prezentowani za pomocą interfejsu internetowego, który umożliwia im interakcję z interfejsami API w następujący sposób:

  • Uzyskiwanie dostępu do dokumentacji interfejsu API. Deweloperzy mogą przejrzeć dokumentację udostępnioną dla każdego interfejsu API.
  • Testowanie interfejsu API. Portal deweloperów oferuje interaktywną konsolę, która umożliwia deweloperowi szybkie i bezpieczne testowanie interfejsu API. Deweloper może wybrać operację interfejsu API, dodać wartości parametrów, a następnie przesłać wywołanie, aby określić odpowiedź zwracaną przez interfejs API.
  • Przeglądanie przykładów kodu interfejsu API. Portal deweloperów oferuje przykłady wywołań interfejsu API w kilku językach programowania, w tym C#, Java, JavaScript, PHP i Python.
  • Subskrybowanie interfejsu API. Gdy użytkownik zdecyduje się korzystać z interfejsu API, portal dla deweloperów umożliwia użytkownikowi utworzenie subskrypcji interfejsu API i uzyskanie klucza subskrypcji do użycia podczas wywoływania interfejsu API.
  • Uruchamianie analizy. Portal deweloperów oferuje analizę użycia interfejsu API przez dewelopera.