Delen via


App Service configureren met Application Gateway

Met Azure Application Gateway kunt u een App Service-app of een andere multitenant-service hebben als lid van de back-endpool. In dit artikel leert u hoe u een App Service-app configureert met Application Gateway. De configuratie voor Application Gateway verschilt, afhankelijk van hoe App Service kan worden geopend:

  • De eerste optie maakt gebruik van een aangepast domein op zowel Application Gateway als de App Service in de back-end.
  • De tweede optie is om Application Gateway toegang te geven tot App Service met behulp van het standaarddomein, achtervoegsel '.azurewebsite.net'.

Deze configuratie wordt aanbevolen voor scenario's op productieniveau en voldoet aan de praktijk van het niet wijzigen van de hostnaam in de aanvraagstroom. U moet een aangepast domein (en een daaraan gekoppeld certificaat) beschikbaar hebben om te voorkomen dat u op het standaard ".Azurewebsite"-domein moet vertrouwen.

Als dezelfde domeinnaam wordt toegewezen aan zowel de Application Gateway als de App Service in de back-endpool, hoeft de verzoekstroom de hostnaam niet te overschrijven. De back-endwebtoepassing ziet de oorspronkelijke host die door de client is gebruikt.

Scenariooverzicht voor Application Gateway naar App Service met hetzelfde aangepaste domein voor beide

In dit artikel leert u het volgende:

  • DNS configureren
  • App Service toevoegen als back-endpool aan Application Gateway
  • HTTP-instellingen configureren voor de verbinding met App Service
  • Een HTTP-listener configureren
  • Een regel voor aanvraagroutering configureren

Vereiste voorwaarden

DNS configureren

In de context van dit scenario is DNS op twee plaatsen relevant:

  • De DNS-naam, die de gebruiker of client gebruikt in de richting van Application Gateway en wat wordt weergegeven in een browser
  • De DNS-naam, die Application Gateway intern gebruikt voor toegang tot de App Service in de back-end

Routeer de gebruiker of client naar Application Gateway met behulp van het aangepaste domein. Stel DNS in met behulp van een CNAME-alias die verwijst naar de DNS voor de Application Gateway. Het DNS-adres van Application Gateway wordt weergegeven op de overzichtspagina van het bijbehorende openbare IP-adres. U kunt ook een A-record maken die rechtstreeks naar het IP-adres verwijst. (Voor Application Gateway V1 kan het VIP wijzigen als u de service stopt en start, waardoor deze optie niet gewenst is.)

App Service moet zo worden geconfigureerd dat het verkeer van Application Gateway accepteert, waarbij de aangepaste domeinnaam als binnenkomende host wordt gebruikt. Zie Zelfstudie: Een bestaande aangepaste DNS-naam toewijzen aan Azure App Service Om het domein te verifiëren, vereist App Service alleen het toevoegen van een TXT-record voor meer informatie over het toewijzen van een aangepast domein aan de App Service. Er is geen wijziging vereist voor CNAME- of A-records. De DNS-configuratie voor het aangepaste domein blijft gericht op Application Gateway.

Als u verbindingen met App Service via HTTPS wilt accepteren, configureert u de TLS-binding. Zie Een aangepaste DNS-naam beveiligen met een TLS/SSL-binding in Azure App Service App Service App Service configureren om het certificaat voor het aangepaste domein op te halen uit Azure Key Vault voor meer informatie.

App Service toevoegen als back-endpool

  1. Selecteer uw Toepassingsgateway in Azure Portal.

  2. Selecteer onder Back-endpools de back-endpool.

  3. Selecteer App Services onder Doeltype.

  4. Selecteer uw App Service onder Doel .

    App Service-backend

    Opmerking

    In de vervolgkeuzelijst worden alleen de app-services ingevuld die zich in hetzelfde abonnement bevinden als uw Application Gateway. Als u een app-service wilt gebruiken die zich in een ander abonnement bevindt dan het abonnement waarin application gateway zich bevindt, kiest u in plaats van App Services te kiezen in de vervolgkeuzelijst Doelen , kiest u het IP-adres of de hostnaamoptie en voert u de hostnaam (example.azurewebsites.net) van de app-service in. Als u privé-eindpunten gebruikt met uw App Service, moet u in plaats daarvan de FQDN of het IP-adres van het privé-eindpunt gebruiken.

  5. Selecteer Opslaan.

HTTP-instellingen voor App Service bewerken

Er is een HTTP-instelling vereist waarmee Application Gateway toegang krijgt tot de App Service-back-end met behulp van de aangepaste domeinnaam. De HTTP-instelling gebruikt standaard de standaardstatustest. Terwijl standaardstatustests aanvragen doorsturen met de hostnaam waarin verkeer wordt ontvangen, kunnen de statustests gebruikmaken van 127.0.0.1 als hostnaam naar de back-endpool, omdat er geen hostnaam expliciet is gedefinieerd. Daarom moeten we een aangepaste statustest maken die is geconfigureerd met de juiste aangepaste domeinnaam als hostnaam.

We maken verbinding met de back-end via HTTPS.

  1. Selecteer onder HTTP-instellingen een bestaande HTTP-instelling of voeg een nieuwe toe.
  2. Wanneer u een nieuwe HTTP-instelling maakt, geeft u deze een naam
  3. Selecteer HTTPS als het gewenste back-endprotocol met poort 443
  4. Als het certificaat is ondertekend door een bekende instantie, selecteert u Ja voor 'Bekend CA-certificaat gebruiker'. U kunt ook verificatie/vertrouwde basiscertificaten van back-endservers toevoegen
  5. Zorg ervoor dat u 'Overschrijven met nieuwe hostnaam' instelt op Nee
  6. Selecteer de aangepaste HTTPS-statustest in de vervolgkeuzelijst voor 'Aangepaste test'.

Configureer H T T P-instellingen voor het gebruik van een aangepast domein voor de App Service-achterkant zonder overschrijving

Een HTTP-listener configureren

Om verkeer te accepteren, moeten we een listener configureren. Zie de listenerconfiguratie van Application Gateway voor meer informatie over listener.

  1. Open de sectie Listeners en kies Listener toevoegen of selecteer een bestaande die u wilt bewerken
  2. Voor een nieuwe listener: geef deze een naam
  3. Selecteer onder Front-end-IP het IP-adres waarop u wilt luisteren
  4. Selecteer onder Poort 443
  5. Selecteer onder Protocol de optie HTTPS
  6. Selecteer onder Een certificaat kiezen de optie Kies een certificaat uit Key Vault. Zie Key Vault gebruiken voor meer informatie, waar u meer informatie vindt over het toewijzen van een beheerde identiteit en het verlenen van rechten aan uw Key Vault.
    1. Geef het certificaat een naam
    2. De beheerde identiteit selecteren
    3. Selecteer de Sleutelkluis van waaruit u het certificaat wilt ophalen
    4. Het certificaat selecteren
  7. Selecteer Onder ListenerType de optie Basic
  8. Selecteer Toevoegen om de listener toe te voegen

Een listener toevoegen voor H T T P S-verkeer

Regel voor aanvraagroutering configureren

De eerder geconfigureerde back-endpool en de HTTP-instellingen, de regel voor aanvraagroutering kan worden ingesteld om verkeer van een listener te halen en deze naar de back-endpool te routeren met behulp van de HTTP-instellingen. Zorg ervoor dat er een HTTP- of HTTPS-listener beschikbaar is die nog niet is gebonden aan een bestaande routeringsregel.

  1. Selecteer onder 'Regels' om een nieuwe regel voor doorsturen van aanvragen toe te voegen
  2. Geef de regel een naam
  3. Selecteer een HTTP- of HTTPS-listener die nog niet is gebonden aan een bestaande routeringsregel
  4. Kies onder Back-enddoelen de back-endpool waarin App Service is geconfigureerd
  5. De HTTP-instellingen configureren waarmee Application Gateway verbinding moet maken met de App Service-back-end
  6. Selecteer Toevoegen om deze configuratie op te slaan

Een nieuwe routeringsregel van de listener toevoegen aan de Back-endpool van App Service met behulp van de geconfigureerde H T T P-instellingen

Testen

Voordat u dit doet, moet u ervoor zorgen dat de backend-status als gezond wordt weergegeven.

Open de sectie 'Back-endstatus' en zorg ervoor dat de kolom Status de combinatie voor HTTP-instelling en back-endpool aangeeft als 'In orde'.

De back-endstatus controleren in Azure portal

Blader nu naar de webtoepassing met behulp van het aangepaste domein dat u hebt gekoppeld aan Zowel Application Gateway als de App Service in de back-end.

Toegang beperken

De web-apps die in deze voorbeelden zijn geïmplementeerd, gebruiken openbare IP-adressen die rechtstreeks vanaf internet kunnen worden geopend. Dit helpt bij het oplossen van problemen wanneer u leert over een nieuwe functie en nieuwe dingen probeert. Maar als u van plan bent een functie in productie te implementeren, wilt u meer beperkingen toevoegen. Houd rekening met de volgende opties: