Czym są zasady?

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Apigee Edge umożliwia „programowanie” działania interfejsu API bez konieczności pisania kodu przy użyciu zasad. Zasady to moduł, który implementuje określoną, ograniczoną funkcję zarządzania. Zasady zostały zaprojektowane tak, aby umożliwić łatwe i niezawodne dodanie do interfejsu API typowych typów funkcji zarządzania. Zasady zapewniają takie funkcje jak zabezpieczenia, ograniczanie szybkości, przekształcanie i zapośredniczenie, dzięki czemu nie musisz samodzielnie kodować i obsługiwać tych funkcji.

Nie musisz ograniczać się do zbioru typów zasad udostępnianych przez Apigee Edge. Możesz też pisać niestandardowe skrypty i kod (np. aplikacje JavaScript i Node.js), które rozszerzają funkcje serwera proxy interfejsu API i umożliwiają wykorzystanie innowacji poza podstawowymi funkcjami zarządzania obsługiwanymi przez zasady Apigee.

Obejrzyj ten film, aby dowiedzieć się, jak egzekwować zasady i załączać do nich zasady.

Typy zasad

Zasady to plik konfiguracji w formacie XML. Struktura każdego typu zasady (na przykład wymagane i opcjonalne elementy konfiguracji) jest definiowana za pomocą schematu XML. Jeśli masz doświadczenie z narzędziami XML, warto zapoznać się ze schematami zasad w przykładach dotyczących platform API na GitHubie.

Typy zasad brzegowych są podzielone na te kategorie:

Zarządzanie ruchem

Zasady w kategorii zarządzania ruchem umożliwiają kontrolowanie przepływu wiadomości z żądaniami i odpowiedziami przez serwer proxy interfejsu API. Zasady te obsługują kontrolę zarówno na poziomie operacyjnym, jak i firmowym. Zapewniają kontrolę nad nieprzetworzoną przepustowością i pozwalają kontrolować ruch w poszczególnych aplikacjach. Typy zasad zarządzania ruchem umożliwiają egzekwowanie limitów i łagodzenie skutków ataków typu DoS.

Bezpieczeństwo

Zasady w kategorii zabezpieczeń obsługują uwierzytelnianie, autoryzację oraz zabezpieczenia oparte na treści.

Mediacja

Zasady w kategorii zapośredniczenia umożliwiają aktywne zarządzanie wiadomościami, gdy przechodzą one przez serwery proxy interfejsu API. Umożliwiają przekształcanie formatów wiadomości z formatu XML na JSON (i odwrotnie) lub z jednego formatu XML na inny. Umożliwiają też analizowanie wiadomości, generowanie nowych wiadomości i zmienianie wartości w e-mailach wychodzących. Zasady zapośredniczenia współdziałają też z podstawowymi usługami udostępnianymi przez usługi interfejsu API, umożliwiając pobieranie danych o aplikacjach, programistach, tokenach zabezpieczeń i usługach API w czasie działania.

Rozszerzenie

Zasady w kategorii rozszerzeń umożliwiają korzystanie z rozszerzalności usług interfejsu API w celu implementacji niestandardowych działań w wybranym języku programowania.

Szczegółowe informacje o poszczególnych typach zasad znajdziesz w artykule Omówienie zasad. Ten temat przedstawia ogólną interakcję ze środowiskiem wykonawczym oraz pokazuje, jak tworzyć zasady i dołączać je do przepływów w konfiguracji serwera proxy interfejsu API.

Wdrażam zmiany zasad

Aby zmiany zasad zaczęły obowiązywać, musisz wdrożyć w środowisku wersję serwera proxy interfejsu API. Gdy dołączysz zasadę lub wprowadzisz zmiany w istniejącej zasadzie, wdrożyj te zmiany za pomocą interfejsu zarządzania lub interfejsu API zarządzania.

Weryfikowanie egzekwowania zasad

Aby można było sprawdzić, czy zasada jest egzekwowana prawidłowo, interfejs API musi być wywołany przez klienta HTTP. Aby sprawdzić tę konfigurację limitu, prześlij do interfejsu API wiele żądań, przekraczając limit ustawiony w zasadzie limitów. Ścieżka identyfikatora URI skonfigurowana jako ustawienie ścieżki podstawowej w punkcie końcowym ProxyEndpoint w żądaniu poniżej to /weather.

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

Gdy w ciągu minuty prześlesz więcej niż 1 żądanie, powinien pojawić się ten komunikat o błędzie:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

Wskazuje to, że usługi interfejsu API egzekwują zasady dotyczące limitów.

Obsługa błędów oparta na zasadach

Zwróć uwagę na format powyższego komunikatu o błędzie. Zawiera właściwość faultstring i errorcode. W wielu przypadkach musisz wdrożyć odpowiednie działanie, aby obsłużyć te błędy. Możesz na przykład wysłać spersonalizowaną wiadomość do dewelopera, którego aplikacja przekroczyła limit.

Więcej informacji na temat postępowania w przypadku awarii znajdziesz w sekcji Obsługa błędów.

Sprawdzone metody: wspólne zestawy zasad

Aby spełnić podstawowe wymagania dotyczące zarządzania, serwery proxy interfejsów API zwykle wymuszają te zasady:

Podstawowa weryfikacja klucza interfejsu API

Przebieg żądania ProxyEndpoint:
  1. SpikeArrest
  2. XMLThreatProtection lub JSONThreatProtection.
  3. Weryfikacja klucza interfejsu API
  4. Limit
  5. ResponseCache
Przebieg reakcji punktu końcowego proxy:
  1. ResponseCache

Podstawowe przekształcenie: z formatu JSON na XML

Przepływ żądania:
  1. SpikeArrest
  2. JSONThreatProtection
  3. Weryfikacja klucza interfejsu API
  4. Limit
  5. Plik JSONToXML
Przepływ reakcji:
  1. XMLToJSON
  2. ResponseCache