Share via


App Service configureren met Application Gateway

Met Application Gateway kunt u een App Service-app of een andere service met meerdere tenants hebben als lid van een 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 wordt 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 '.azurewebsites.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 beschikken over een aangepast domein (en het bijbehorende certificaat) om te voorkomen dat u moet vertrouwen op het standaarddomein .azurewebsites.

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

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

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

Vereisten

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 wee naar de DNS voor 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 worden geconfigureerd, zodat het verkeer van Application Gateway accepteert met behulp van de aangepaste domeinnaam als de binnenkomende host. 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 configureren voor het ophalen van het certificaat voor het aangepaste domein 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

    Notitie

    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.

  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, gebruiken de statustests 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'.

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

Een HTTP-listener configureren

Om verkeer te accepteren, moeten we een listener configureren. Zie de configuratie van application gateway-listener voor meer informatie.

  1. Open de sectie Listeners en kies Listener toevoegen of klik op een bestaande om te 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 Een certificaat kiezen 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. Klik op Toevoegen om de listener toe te voegen

Add a listener for H T T P S traffic

Regel voor aanvraagroutering configureren

Met behulp van de eerder geconfigureerde back-endpool en de HTTP-Instellingen kan de regel voor aanvraagroutering 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. Klik onder 'Regels' om een nieuwe regel voor doorsturen van aanvragen toe te voegen
  2. Geef de regel een naam op
  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

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

Testen

Voordat we dit doen, moet u ervoor zorgen dat de back-endstatus als in orde 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'.

Check backend health 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 om een functie in productie te implementeren, wilt u meer beperkingen toevoegen. Overweeg de volgende opties:

  • Toegangsbeperkingsregels configureren op basis van service-eindpunten. Hiermee kunt u binnenkomende toegang tot de app vergrendelen om ervoor te zorgen dat het bronadres afkomstig is van Application Gateway.
  • Gebruik statische IP-beperkingen voor Azure-app Service. U kunt bijvoorbeeld de web-app beperken zodat deze alleen verkeer van de toepassingsgateway ontvangt. Gebruik de ip-beperkingsfunctie van app service om het VIP van de toepassingsgateway weer te geven als het enige adres met toegang.