Konfigurowanie usługi App Service z usługą Application Gateway

Usługa Application Gateway umożliwia posiadanie aplikacji usługi App Service lub innej usługi wielodostępnej jako członka puli zaplecza. Z tego artykułu dowiesz się, jak skonfigurować aplikację usługi App Service za pomocą usługi Application Gateway. Konfiguracja usługi Application Gateway będzie się różnić w zależności od sposobu uzyskiwania dostępu do usługi App Service:

  • Pierwsza opcja korzysta z domeny niestandardowej zarówno w usłudze Application Gateway, jak i w usłudze App Service w zapleczu.
  • Drugą opcją jest uzyskanie dostępu do usługi App Service w usłudze Application Gateway przy użyciu jej domeny domyślnej, sufiksu jako ".azurewebsites.net".

Ta konfiguracja jest zalecana w scenariuszach klasy produkcyjnej i spełnia praktykę braku zmiany nazwy hosta w przepływie żądania. Musisz mieć dostęp do domeny niestandardowej (i skojarzonego certyfikatu), aby uniknąć konieczności polegania na domyślnej domenie ".azurewebsites".

Kojarząc tę samą nazwę domeny zarówno z usługą Application Gateway, jak i usługą App Service w puli zaplecza, przepływ żądania nie musi zastępować nazwy hosta. Aplikacja internetowa zaplecza zobaczy oryginalnego hosta, który był używany przez klienta.

Scenario overview for Application Gateway to App Service using the same custom domain for both

Z tego artykułu dowiesz się, jak wykonywać następujące działania:

  • Konfigurowanie systemu DNS
  • Dodawanie usługi App Service jako puli zaplecza do usługi Application Gateway
  • Konfigurowanie Ustawienia HTTP dla połączenia z usługą App Service
  • Konfigurowanie odbiornika HTTP
  • Konfigurowanie reguły routingu żądań

Wymagania wstępne

Konfigurowanie usługi DNS

W kontekście tego scenariusza system DNS jest odpowiedni w dwóch miejscach:

  • Nazwa DNS używana przez użytkownika lub klienta w usłudze Application Gateway i wyświetlana w przeglądarce
  • Nazwa DNS używana wewnętrznie przez usługę Application Gateway w celu uzyskania dostępu do usługi App Service w zapleczu

Kierowanie użytkownika lub klienta do usługi Application Gateway przy użyciu domeny niestandardowej. Konfigurowanie systemu DNS przy użyciu aliasu CNAME wskazywanego na dns dla usługi Application Gateway. Adres DNS usługi Application Gateway jest wyświetlany na stronie przeglądu skojarzonego publicznego adresu IP. Alternatywnie utwórz rekord A wskazujący bezpośrednio adres IP. (W przypadku usługi Application Gateway w wersji 1 adres VIP może ulec zmianie, jeśli zatrzymasz i uruchomisz usługę, co sprawia, że ta opcja jest niepożądane).

Usługa App Service powinna być skonfigurowana tak, aby akceptowała ruch z usługi Application Gateway przy użyciu niestandardowej nazwy domeny jako hosta przychodzącego. Aby uzyskać więcej informacji na temat mapowania domeny niestandardowej na usługę App Service, zobacz Samouczek: mapowania istniejącej niestandardowej nazwy DNS na usługę aplikacja systemu Azure Aby zweryfikować domenę, usługa App Service wymaga tylko dodania rekordu TXT. W rekordach CNAME lub A nie jest wymagana żadna zmiana. Konfiguracja DNS domeny niestandardowej pozostanie skierowana do usługi Application Gateway.

Aby akceptować połączenia z usługą App Service za pośrednictwem protokołu HTTPS, skonfiguruj powiązanie protokołu TLS. Aby uzyskać więcej informacji, zobacz Zabezpieczanie niestandardowej nazwy DNS z powiązaniem TLS/SSL w usłudze aplikacja systemu Azure Service Configure App Service w celu ściągnięcia certyfikatu dla domeny niestandardowej z usługi Azure Key Vault.

Dodawanie usługi App Service jako puli zaplecza

  1. W witrynie Azure Portal wybierz swoją usługę Application Gateway.

  2. W obszarze Pule zaplecza wybierz pulę zaplecza.

  3. W obszarze Typ docelowy wybierz pozycję App Services.

  4. W obszarze Cel wybierz usługę App Service.

    App service backend

    Uwaga

    Lista rozwijana wypełnia tylko te usługi aplikacji, które znajdują się w tej samej subskrypcji co usługa Application Gateway. Jeśli chcesz użyć usługi app Service, która znajduje się w innej subskrypcji niż ta, w której znajduje się usługa Application Gateway, zamiast wybierać usługi App Services na liście rozwijanej Cele , wybierz opcję Adres IP lub nazwa hosta i wprowadź nazwę hosta (example.azurewebsites.net) usługi app Service.

  5. Wybierz pozycję Zapisz.

Edytowanie ustawień protokołu HTTP dla usługi App Service

Ustawienie HTTP jest wymagane, aby usługa Application Gateway mogła uzyskać dostęp do zaplecza usługi App Service przy użyciu niestandardowej nazwy domeny. Ustawienie HTTP będzie domyślnie używać domyślnej sondy kondycji. Podczas gdy domyślne sondy kondycji będą przekazywać żądania z nazwą hosta, w której jest odbierany ruch, sondy kondycji będą wykorzystywać 127.0.0.1 jako nazwę hosta do puli zaplecza, ponieważ nie zdefiniowano jawnie nazwy hosta. Z tego powodu musimy utworzyć niestandardową sondę kondycji skonfigurowaną przy użyciu poprawnej niestandardowej nazwy domeny jako nazwy hosta.

Połączymy się z zapleczem przy użyciu protokołu HTTPS.

  1. W obszarze Ustawienia HTTP wybierz istniejące ustawienie HTTP lub dodaj nowe.
  2. Podczas tworzenia nowego ustawienia PROTOKOŁU HTTP nadaj mu nazwę
  3. Wybierz protokół HTTPS jako żądany protokół zaplecza przy użyciu portu 443
  4. Jeśli certyfikat jest podpisany przez dobrze znany urząd, wybierz pozycję "Tak" dla pozycji "Dobrze znany certyfikat urzędu certyfikacji użytkownika". Alternatywnie dodaj uwierzytelnianie/zaufane certyfikaty główne serwerów zaplecza
  5. Upewnij się, że ustawiono wartość "Przesłoń z nową nazwą hosta" na "Nie"
  6. Wybierz niestandardową sondę kondycji HTTPS z listy rozwijanej "Sonda niestandardowa".

Configure H T T P Settings to use custom domain towards App Service backend using No Override

Konfigurowanie odbiornika HTTP

Aby zaakceptować ruch, należy skonfigurować odbiornik. Aby uzyskać więcej informacji na ten temat, zobacz Konfiguracja odbiornika usługi Application Gateway.

  1. Otwórz sekcję "Odbiorniki" i wybierz pozycję "Dodaj odbiornik" lub kliknij istniejącą, aby edytować
  2. Dla nowego odbiornika: nadaj mu nazwę
  3. W obszarze "Adres IP frontonu" wybierz adres IP do nasłuchiwania
  4. W obszarze "Port" wybierz pozycję 443
  5. W obszarze "Protokół" wybierz pozycję "HTTPS"
  6. W obszarze "Wybierz certyfikat" wybierz pozycję "Wybierz certyfikat z usługi Key Vault". Aby uzyskać więcej informacji, zobacz Using Key Vault (Korzystanie z usługi Key Vault ), gdzie można znaleźć więcej informacji na temat przypisywania tożsamości zarządzanej i dostarczania jej praw do usługi Key Vault.
    1. Nadaj certyfikatowi nazwę
    2. Wybierz tożsamość zarządzaną
    3. Wybierz usługę Key Vault z miejsca, w którym chcesz uzyskać certyfikat
    4. Wybieranie certyfikatu
  7. W obszarze "Typ odbiornika" wybierz pozycję "Podstawowa"
  8. Kliknij pozycję "Dodaj", aby dodać odbiornik

Add a listener for H T T P S traffic

Konfigurowanie reguły routingu żądań

Korzystając z wcześniej skonfigurowanej puli zaplecza i Ustawienia HTTP, można skonfigurować regułę routingu żądań w celu kierowania ruchu z odbiornika i kierowania go do puli zaplecza przy użyciu Ustawienia HTTP. W tym celu upewnij się, że masz dostępny odbiornik HTTP lub HTTPS, który nie jest jeszcze powiązany z istniejącą regułą routingu.

  1. W obszarze "Reguły" kliknij, aby dodać nową regułę rozsyłania żądań
  2. Podaj regułę o nazwie
  3. Wybierz odbiornik HTTP lub HTTPS, który nie jest jeszcze powiązany z istniejącą regułą routingu
  4. W obszarze "Elementy docelowe zaplecza" wybierz pulę zaplecza, w której skonfigurowano usługę App Service
  5. Konfigurowanie ustawień protokołu HTTP, za pomocą których usługa Application Gateway powinna łączyć się z zapleczem usługi App Service
  6. Wybierz pozycję "Dodaj", aby zapisać tę konfigurację

Add a new Routing rule from the listener to the App Service Backend Pool using the configured H T T P Settings

Testowanie

Zanim to zrobimy, upewnij się, że kondycja zaplecza jest w dobrej kondycji:

Otwórz sekcję "Kondycja zaplecza" i upewnij się, że kolumna "Stan" wskazuje kombinację ustawień HTTP i puli zaplecza wyświetlanych jako "W dobrej kondycji".

Check backend health in Azure portal

Teraz przejdź do aplikacji internetowej przy użyciu domeny niestandardowej skojarzonej zarówno z usługą Application Gateway, jak i usługą App Service w zapleczu.

Ograniczanie dostępu

Aplikacje internetowe wdrożone w tych przykładach używają publicznych adresów IP, do których można uzyskać dostęp bezpośrednio z Internetu. Ułatwia to rozwiązywanie problemów podczas poznawania nowej funkcji i próby nowych rzeczy. Jeśli jednak zamierzasz wdrożyć funkcję w środowisku produkcyjnym, należy dodać więcej ograniczeń. Rozważ następujące opcje:

  • Skonfiguruj reguły ograniczeń dostępu na podstawie punktów końcowych usługi. Dzięki temu można zablokować dostęp przychodzący do aplikacji, upewniając się, że adres źródłowy pochodzi z usługi Application Gateway.
  • Użyj ograniczeń statycznych adresów IP usługi aplikacja systemu Azure Service. Można na przykład ograniczyć aplikację internetową tak, aby odbierała ruch tylko z bramy aplikacji. Użyj funkcji ograniczeń adresu IP usługi App Service, aby wyświetlić adres VIP bramy aplikacji jako jedyny adres z dostępem.