Konfigurowanie usługi Front Door Standard/Premium przed usługą Azure API Management

DOTYCZY: Wszystkie warstwy usługi API Management

Azure Front Door to nowoczesna platforma sieci dostarczania aplikacji zapewniająca bezpieczną, skalowalną sieć dostarczania zawartości (CDN), przyspieszanie witryn dynamicznych i globalne równoważenie obciążenia HTTP dla globalnych aplikacji internetowych. W przypadku użycia przed usługą API Management usługa Front Door może zapewnić odciążanie protokołu TLS, kompleksowe szyfrowanie TLS, równoważenie obciążenia, buforowanie odpowiedzi żądań GET i zaporę aplikacji internetowej, między innymi. Aby uzyskać pełną listę obsługiwanych funkcji, zobacz Co to jest usługa Azure Front Door?

Uwaga

W przypadku obciążeń internetowych zdecydowanie zalecamy korzystanie z ochrony przed atakami DDoS platformy Azure i zapory aplikacji internetowej w celu ochrony przed pojawiającymi się atakami DDoS. Inną opcją jest zastosowanie usługi Azure Front Door wraz z zaporą aplikacji internetowej. Usługa Azure Front Door oferuje ochronę na poziomie platformy przed atakami DDoS na poziomie sieci. Aby uzyskać więcej informacji, zobacz Punkt odniesienia zabezpieczeń dla usług platformy Azure.

W tym artykule pokazano, jak:

  • Skonfiguruj profil usługi Azure Front Door Standard/Premium przed publicznie dostępnym wystąpieniem usługi Azure API Management: bez sieci lub wstrzykniętym w sieci wirtualnej w trybie zewnętrznym.
  • Ogranicz usługę API Management do akceptowania ruchu interfejsu API tylko z usługi Azure Front Door.

Wymagania wstępne

  • Wystąpienie usługi API Management.
    • Jeśli zdecydujesz się używać wystąpienia z wstrzykniętą siecią, należy go wdrożyć w zewnętrznej sieci wirtualnej. (Iniekcja sieci wirtualnej jest obsługiwana w warstwach usługi Developer i Premium).
  • Zaimportuj co najmniej jeden interfejs API do wystąpienia usługi API Management, aby potwierdzić routing za pośrednictwem usługi Front Door.

Konfigurowanie usługi Azure Front Door

Tworzenie profilu

Aby uzyskać instrukcje tworzenia profilu usługi Azure Front Door Standard/Premium, zobacz Szybki start: tworzenie profilu usługi Azure Front Door — Azure Portal. W tym artykule możesz wybrać profil usługi Front Door Standard. Porównanie usług Front Door Standard i Front Door Premium można znaleźć w temacie Porównanie warstw.

Skonfiguruj następujące ustawienia usługi Front Door specyficzne dla używania punktu końcowego bramy wystąpienia usługi API Management jako źródła usługi Front Door. Aby uzyskać wyjaśnienie innych ustawień, zobacz przewodnik Szybki start usługi Front Door.

Ustawienie Wartość
Typ źródła Wybieranie usługi API Management
Nazwa hosta źródła Wybierz nazwę hosta wystąpienia usługi API Management, na przykład myapim.azure-api.net
Buforowanie Wybierz pozycję Włącz buforowanie dla usługi Front Door, aby buforować zawartość statyczną
Zachowanie buforowania ciągu zapytania Wybierz pozycję Użyj ciągu zapytania

Zrzut ekranu przedstawiający tworzenie profilu usługi Front Door w portalu.

Aktualizowanie domyślnej grupy źródeł

Po utworzeniu profilu zaktualizuj domyślną grupę pochodzenia, aby uwzględnić sondę kondycji usługi API Management.

  1. W portalu przejdź do profilu usługi Front Door.

  2. W menu po lewej stronie w obszarze Ustawienia wybierz pozycję Grupy>pochodzenia default-origin-group.

  3. W oknie Aktualizuj grupę źródeł skonfiguruj następujące ustawienia sondy kondycji i wybierz pozycję Aktualizuj:

    Ustawienie Wartość
    Stan Wybierz pozycję Włącz sondy kondycji
    Ścieżka Wprowadź /status-0123456789abcdef
    Protokół Wybierz pozycję HTTPS
    Metoda Wybierz pozycję GET
    Interwał (w sekundach) Wprowadź wartość 30

    Zrzut ekranu przedstawiający aktualizowanie domyślnej grupy pochodzenia w portalu.

Aktualizowanie trasy domyślnej

Zalecamy zaktualizowanie trasy domyślnej skojarzonej z grupą źródeł usługi API Management w celu używania protokołu HTTPS jako protokołu przekazującego.

  1. W portalu przejdź do profilu usługi Front Door.
  2. W menu po lewej stronie w obszarze Ustawienia wybierz pozycję Grupy źródeł.
  3. Rozwiń węzeł default-origin-group.
  4. W menu kontekstowym (...) trasy domyślnej wybierz pozycję Konfiguruj trasę.
  5. Ustaw wartość Zaakceptowane protokoły na HTTP i HTTPS.
  6. Włącz opcję Przekieruj cały ruch, aby używać protokołu HTTPS.
  7. Ustaw wartość Tylko protokół przekazywania na wartość HTTPS, a następnie wybierz pozycję Aktualizuj.

Testowanie konfiguracji

Przetestuj konfigurację profilu usługi Front Door, wywołując interfejs API hostowany przez usługę API Management. Najpierw wywołaj interfejs API bezpośrednio za pośrednictwem bramy usługi API Management, aby upewnić się, że interfejs API jest osiągalny. Następnie wywołaj interfejs API za pośrednictwem usługi Front Door. Aby przetestować, możesz użyć klienta wiersza polecenia, takiego jak curl wywołania, lub narzędzia takiego jak Postman.

Wywoływanie interfejsu API bezpośrednio za pomocą usługi API Management

W poniższym przykładzie operacja w interfejsie API konferencji demonstracyjnej hostowanej przez wystąpienie usługi API Management jest wywoływana bezpośrednio przy użyciu narzędzia Postman. W tym przykładzie nazwa hosta wystąpienia znajduje się w domenie domyślnej azure-api.net , a prawidłowy klucz subskrypcji jest przekazywany przy użyciu nagłówka żądania. Pomyślna odpowiedź pokazuje 200 OK i zwraca oczekiwane dane:

Zrzut ekranu przedstawiający wywoływanie punktu końcowego usługi API Management bezpośrednio przy użyciu narzędzia Postman.

Wywoływanie interfejsu API bezpośrednio za pośrednictwem usługi Front Door

W poniższym przykładzie ta sama operacja w interfejsie API konferencji demonstracyjnej jest wywoływana przy użyciu punktu końcowego usługi Front Door skonfigurowanego dla danego wystąpienia. Nazwa hosta punktu końcowego azurefd.net w domenie jest wyświetlana w portalu na stronie Przegląd profilu usługi Front Door. Pomyślna odpowiedź pokazuje 200 OK i zwraca te same dane co w poprzednim przykładzie:

Zrzut ekranu przedstawiający wywoływanie punktu końcowego usługi Front Door przy użyciu narzędzia Postman.

Ograniczanie ruchu przychodzącego do wystąpienia usługi API Management

Użyj zasad usługi API Management, aby upewnić się, że wystąpienie usługi API Management akceptuje ruch tylko z usługi Azure Front Door. To ograniczenie można osiągnąć przy użyciu jednej lub obu następujących metod:

  1. Ograniczanie przychodzących adresów IP do wystąpień usługi API Management
  2. Ograniczanie ruchu na podstawie wartości nagłówka X-Azure-FDID

Ograniczanie przychodzących adresów IP

Zasady filtrowania adresów IP dla ruchu przychodzącego można skonfigurować w usłudze API Management, aby zezwalać tylko na ruch związany z usługą Front Door, który obejmuje:

  • Przestrzeń adresów IP zaplecza usługi Front Door — zezwalaj na adresy IP odpowiadające sekcji AzureFrontDoor.Backend w zakresach adresów IP platformy Azure i tagach usługi.

    Uwaga

    Jeśli wystąpienie usługi API Management jest wdrażane w zewnętrznej sieci wirtualnej, wykonaj to samo ograniczenie, dodając regułę sieciowej grupy zabezpieczeń dla ruchu przychodzącego w podsieci używanej dla wystąpienia usługi API Management. Skonfiguruj regułę, aby zezwolić na ruch HTTPS z tagu usługi źródłowej AzureFrontDoor.Backend na porcie 443.

  • Usługi infrastruktury platformy Azure — zezwalaj na adresy IP 168.63.129.16 i 169.254.169.254.

Sprawdzanie nagłówka usługi Front Door

Żądania kierowane przez usługę Front Door zawierają nagłówki specyficzne dla konfiguracji usługi Front Door. Zasady sprawdzania nagłówka można skonfigurować tak, aby filtrować żądania przychodzące na podstawie unikatowej wartości nagłówka żądania HTTP wysyłanego X-Azure-FDID do usługi API Management. Ta wartość nagłówka to identyfikator usługi Front Door, który jest wyświetlany w portalu na stronie Przegląd profilu usługi Front Door.

W poniższym przykładzie zasad identyfikator usługi Front Door jest określany przy użyciu nazwanej wartości o nazwie FrontDoorId.

<check-header name="X-Azure-FDID" failed-check-httpcode="403" failed-check-error-message="Invalid request." ignore-case="false">
        <value>{{FrontDoorId}}</value>
</check-header>

Żądania, którym nie towarzyszy prawidłowy X-Azure-FDID nagłówek, zwracają 403 Forbidden odpowiedź.

(Opcjonalnie) Konfigurowanie usługi Front Door dla portalu dla deweloperów

Opcjonalnie skonfiguruj portal dewelopera wystąpienia usługi API Management jako punkt końcowy w profilu usługi Front Door. Portal dla deweloperów zarządzanych jest już frontonowany przez usługę CDN zarządzaną przez platformę Azure, ale warto skorzystać z funkcji usługi Front Door, takich jak zapora aplikacji internetowej.

Poniżej przedstawiono ogólne kroki dodawania punktu końcowego portalu dla deweloperów do profilu:

  • Aby dodać punkt końcowy i skonfigurować trasę, zobacz Konfigurowanie i punkt końcowy za pomocą menedżera usługi Front Door.

  • Podczas dodawania trasy dodaj grupę pochodzenia i ustawienia źródła, aby reprezentować portal deweloperów:

    • Typ źródła — wybieranie pozycji Niestandardowe
    • Nazwa hosta — wprowadź nazwę hosta portalu dla deweloperów, na przykład myapim.developer.azure-api.net

Aby uzyskać więcej informacji i szczegółowe informacje na temat ustawień, zobacz How to configure an origin for Azure Front Door (Jak skonfigurować źródło dla usługi Azure Front Door).

Uwaga

Jeśli skonfigurowano identyfikator entra firmy Microsoft lub dostawcę tożsamości usługi Azure AD B2C dla portalu dla deweloperów, musisz zaktualizować odpowiednią rejestrację aplikacji przy użyciu dodatkowego adresu URL przekierowania do usługi Front Door. W rejestracji aplikacji dodaj adres URL punktu końcowego portalu dla deweloperów skonfigurowanego w profilu usługi Front Door.

Następne kroki