Delen via


Zelfstudie: Leveringsregels toevoegen en aanpassen voor Azure Front Door Standard/Premium (preview) met Azure CLI

Azure Front Door Standard/Premium (preview) is een snel en veilig modern cloud-CDN. Azure Front Door maakt gebruik van het wereldwijde edge-netwerk van Microsoft en kan worden geïntegreerd met intelligente bedreigingsbeveiliging. Azure Front Door Standard richt zich op het leveren van inhoud. Azure Front Door Premium voegt uitgebreide beveiligingsmogelijkheden en aanpassingen toe. Deze zelfstudie is gericht op het maken van een Azure Front Door-profiel en het toevoegen van leveringsregels voor gedetailleerdere controle over het gedrag van uw web-app.

Notitie

Deze documentatie is bedoeld voor Azure Front Door Standard/Premium (preview). Zoekt u informatie over Azure Front Door? Bekijk Azure Front Door Docs.

In deze zelfstudie leert u het volgende:

  • Maak een Azure Front Door-profiel.
  • Maak twee exemplaren van een web-app.
  • Maak een nieuw beveiligingsbeleid.
  • Controleer de verbinding met uw web-apps.
  • Maak een regelset.
  • Maak een regel en voeg deze toe aan de regelset.
  • Voeg acties of voorwaarden toe aan uw regels.

Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.

Vereisten

Een Azure Front Door maken

Een brongroep maken

Voor deze quickstart hebt u twee resourcegroepen nodig. Eén in VS - centraal en de tweede in VS - oost.

Voer az group create uit om resourcegroepen te maken.

az group create \
    --name myRGFDCentral \
    --location centralus

az group create \
    --name myRGFDEast \
    --location eastus

Een Azure Front Door-profiel maken

Voer az afd profile create uit om een Azure Front Door-profiel te maken.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFDCentral \
    --sku Premium_AzureFrontDoor \
    --subscription mysubscription

Twee instanties van een web-app maken

Voor deze zelfstudie hebt u twee exemplaren nodig van een webtoepassing die in verschillende Azure-regio's wordt uitgevoerd. Beide webtoepassingsinstanties worden in de modus Actief/actief uitgevoerd, dus verkeer kan in beide instanties worden uitgevoerd.

Als u nog geen web-app hebt, voert u het volgende script uit om twee voorbeelden van web-apps in te stellen.

App Service-abonnementen maken

Voordat u de web-apps kunt maken, hebt u twee App Service-abonnementen nodig, één in VS - centraal en de tweede in VS - oost.

Voer az appservice plan create uit om uw App Service-plannen te maken.

az appservice plan create \
    --name myAppServicePlanCentralUS \
    --resource-group myRGFDCentral

az appservice plan create \
    --name myAppServicePlanEastUS \
    --resource-group myRGFDEast

Web-apps maken

Voer az webapp create uit om een web-app te maken in elk van de App Service-plannen in de vorige stap. Web-app-namen moeten wereldwijd uniek zijn.

Voer az webapp list-runtimes uit om een lijst met ingebouwde stacks voor web-apps weer te geven.

az webapp create \
    --name WebAppContoso-001 \
    --resource-group myRGFDCentral \
    --plan myAppServicePlanCentralUS \
    --runtime "DOTNETCORE|2.1"

az webapp create \
    --name WebAppContoso-002 \
    --resource-group myRGFDEast \
    --plan myAppServicePlanEastUS \
    --runtime "DOTNETCORE|2.1"

Noteer de standaardhostnaam van elke web-app, zodat u de backend-adressen kunt definiëren wanneer u de Front Door in de volgende stap implementeert.

Een eindpunt toevoegen

Voer az afd endpoint create uit om een eindpunt in uw profiel te maken. U kunt meerdere eindpunten in uw profiel maken nadat u klaar bent met het maken van de ervaring.

az afd endpoint create \
    --resource-group myRGFDCentral \
    --endpoint-name contoso-frontend \
    --profile-name contosoafd \
    --origin-response-timeout-seconds 60 \
    --enabled-state Enabled

Een oorspronkelijke groep maken

Voer az afd origin-group create uit om een origin-groep te maken die uw twee web-apps bevat.

az afd origin-group create \
    --resource-group myRGFDCentral \
    --origin-group-name og1 \
    --profile-name contosoafd \
    --probe-request-type GET \
    --probe-protocol Http \
    --probe-interval-in-seconds 120 \
    --probe-path /test1/azure.txt \
    --sample-size 4 \
    --successful-samples-required 3 \
    --additional-latency-in-milliseconds 50

Origins toevoegen aan de groep

Voer az afd origin create uit om een origin toe te voegen aan uw origin-groep.

az afd origin create \
    --resource-group myRGFDCentral \
    --host-name webappcontoso-1.azurewebsites.net
    --profile-name contosoafd \
    --origin-group-name og1 \
    --origin-name contoso1 \
    --origin-host-header webappcontoso-1.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

Herhaal deze stap en voeg uw tweede oorsprong toe.

az afd origin create \
    --resource-group myRGFDCentral \
    --host-name webappcontoso-2.azurewebsites.net
    --profile-name contosoafd \
    --origin-group-name og1 \
    --origin-name contoso2 \
    --origin-host-header webappcontoso-2.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

Een route toevoegen

Voer az afd route create uit om uw front-endeindpunt toe te wijzen aan de oorspronkelijke groep. Met deze route worden aanvragen doorgestuurd van het eindpunt naar og1.

az afd route create \
    --resource-group myRGFDCentral \
    --endpoint-name contoso-frontend \
    --profile-name contosoafd \
    --route-name route1 \
    --https-redirect Enabled \
    --origin-group og1 \
    --supported-protocols Https \
    --link-to-default-domain Enabled \
    --forwarding-protocol MatchRequest

Een nieuw beveiligingsbeleid maken

Een WAF-beleid maken

Voer az network front-door waf-policy create uit om een WAF-beleid te maken voor een van uw resourcegroepen.

Maak een nieuw WAF-beleid voor uw Front Door. In dit voorbeeld wordt een beleid gemaakt dat is ingeschakeld en in de preventiemodus.

az network front-door waf-policy create
    --name contosoWAF /
    --resource-group myRGFDCentral /
    --sku Premium_AzureFrontDoor
    --disabled false /
    --mode Prevention

Notitie

Als u de modus selecteert Detection , blokkeert uw WAF geen aanvragen.

Het beveiligingsbeleid maken

Voer az afd security-policy create uit om uw WAF-beleid toe te passen op het standaarddomein van het eindpunt.

az afd security-policy create \
    --resource-group myRGFDCentral \
    --profile-name contosoafd \
    --security-policy-name contososecurity \
    --domains /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contoso-frontend.z01.azurefd.net \
    --waf-policy /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF

Azure Front Door verifiëren

Wanneer u het Azure Front Door Standard-/Premium-profiel maakt, duurt het enkele minuten voordat de configuratie wereldwijd is geïmplementeerd. Zodra dit is voltooid, hebt u toegang tot de front-endhost die u hebt gemaakt. Ga in een browser naar contoso-frontend.z01.azurefd.net. Uw aanvraag wordt automatisch doorgestuurd naar de dichtstbijzijnde server van de opgegeven servers in de oorspronkelijke groep.

Als u een directe globale failover wilt testen, gebruiken we de volgende stappen:

  1. Open een browser (zoals hierboven beschreven) en ga naar het adres van de front-end: contoso-frontend.azurefd.net.

  2. Zoek en selecteer App Services in Azure Portal. Blader omlaag om een van uw web-apps, WebAppContoso-1 te zoeken in dit voorbeeld.

  3. Selecteer uw web-app en selecteer vervolgens Stoppen en Ja om het te controleren.

  4. Vernieuw de browser. Als het goed is, ziet u dezelfde informatiepagina.

    Tip

    Deze acties worden met enige vertraging uitgevoerd. Mogelijk moet u de pagina vernieuwen.

  5. Zoek de andere web-app en stop ook deze app.

  6. Vernieuw de browser. Als het goed is, ziet u nu een foutbericht.

    Beide instanties van de web-app zijn gestopt

Een regelset maken

Maak een regelset om aan te passen hoe HTTP-aanvragen aan de rand worden verwerkt. Leveringsregels die zijn toegevoegd aan de regelset bieden meer controle over het gedrag van uw webtoepassing. Voer az afd rule-set create uit om een regelset te maken in uw Azure Front Door-profiel.

az afd rule-set create \
    --profile-name contosoafd \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules

Een leveringsregel maken en deze toevoegen aan uw regelset

Maak een nieuwe leveringsregel binnen uw regelset. Voer az afd rule create uit om een leveringsregel te maken in uw regelset. In dit voorbeeld maken we een regel voor een http-naar-https-omleiding.

az afd rule create \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --order 1 \
    --match-variable RequestScheme \
    --operator Equal \
    --match-values HTTP \
    --rule-name "redirect" \
    --action-name "UrlRedirect" \
    --redirect-protocol Https \
    --redirect-type Moved

Een actie of voorwaarde toevoegen aan uw leveringsregel

Het kan zijn dat u de nieuwe leveringsregel verder moet aanpassen. U kunt indien nodig acties of voorwaarden toevoegen na het maken. Voer az afd rule action add of az afd rule condition add uit om uw regel bij te werken.

Een actie toevoegen

az afd rule action add \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --rule-name redirect \
    --action-name "CacheExpiration" \
    --cache-behavior BypassCache

Een voorwaarde toevoegen

az afd rule condition add \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --rule-name redirect \
    --match-variable RemoteAddress \
    --operator GeoMatch \
    --match-values "TH"

Resources opschonen

Als u de resources voor de Front Door niet nodig hebt, verwijdert u beide resourcegroepen. Als u de resourcegroepen verwijdert, worden ook de Front Door en alle bijbehorende resources verwijderd.

Voer az group delete uit:

az group delete \
    --name myRGFDCentral

az group delete \
    --name myRGFDEast