Een Application Gateway-listener configureren voor versleuteling

Voltooid

U hebt SSL geconfigureerd voor de verbinding tussen Azure Application Gateway en de servers in de back-endpool. Voor de verzendportal hebt u volledige end-to-end-versleuteling nodig. Als u deze versleuteling wilt uitvoeren, moet u ook de berichten versleutelen die de client naar Application Gateway verzendt.

Een front-endpoort maken

Application Gateway ontvangt aanvragen via een of meer poorten. Als u communiceert met de gateway via HTTPS, moet u een SSL-poort configureren. HTTPS maakt traditioneel gebruik van poort 443. Gebruik de opdracht az network application-gateway frontend-port create om een nieuwe front-endpoort te maken. In het volgende voorbeeld ziet u hoe u een front-endpoort maakt voor poort 443:

az network application-gateway frontend-port create \
    --resource-group $rgName \
    --gateway-name gw-shipping  \
    --name my-https-port \
    --port 443

Een listener configureren

Een listener wacht op binnenkomend verkeer naar de gateway op een opgegeven front-endpoort. Dit verkeer wordt vervolgens doorgestuurd naar een server in de back-endpool. Als de front-endpoort SSL gebruikt, moet u aangeven welk certificaat moet worden gebruikt voor het ontsleutelen van binnenkomende berichten. Het certificaat bevat de persoonlijke sleutel.

U kunt het certificaat toevoegen met behulp van de opdracht az network application-gateway ssl-cert create. Het certificaatbestand moet de PFX-indeling hebben. Omdat dit bestand de persoonlijke sleutel bevat, is het waarschijnlijk ook beveiligd met een wachtwoord. U geeft het wachtwoord op in het argument cert-password, zoals wordt weergegeven in het volgende voorbeeld.

az network application-gateway ssl-cert create \
   --resource-group $rgName \
   --gateway-name gw-shipping \
   --name shipping-ssl.crt \
   --cert-file shippingportal/server-config/shipping-ssl.pfx \
   --cert-password <password for certificate file>

Vervolgens kunt u de listener maken die aanvragen ontvangt van de front-endpoort en deze ontsleutelt met behulp van dit certificaat. Gebruik de opdracht az network application-gateway http-listener create.

az network application-gateway http-listener create \
    --resource-group $rgName \
    --gateway-name gw-shipping \
    --name http-listener \
    --frontend-port my-https-port \
    --ssl-cert shipping-ssl.crt

Een regel definiƫren voor het verzenden van HTTPS-aanvragen naar de servers

De laatste stap is het maken van een regel waarmee de berichten die via de listener worden ontvangen, worden doorgestuurd naar de servers in de back-endpool. De berichten die van de front-endpoort worden ontvangen, worden ontsleuteld via het SSL-certificaat dat is opgegeven voor de listener. U moet deze berichten opnieuw versleutelen met behulp van het certificaat aan de clientzijde voor de servers in de back-endpool. U definieert deze informatie in de regel.

In het volgende voorbeeld ziet u hoe u de opdracht az network application-gateway rule create gebruikt om een regel te maken die een listener verbindt met een back-endpool. De parameter --http-settings geeft de HTTP-instellingen op die verwijzen naar het certificaat aan de clientzijde voor de servers. U hebt deze instellingen in de vorige les gemaakt.

az network application-gateway rule create \
    --resource-group $rgName \
    --gateway-name gw-shipping \
    --name app-gw-rule \
    --address-pool ap-backend \
    --http-listener http-listener \
    --http-settings https-settings \
    --rule-type Basic
    --priority 101

U moet nu volledige end-to-end-versleuteling hebben voor berichten die worden gerouteerd via Application Gateway. Clients gebruiken het SSL-certificaat voor Application Gateway om berichten te verzenden. Application Gateway ontsleutelt deze berichten met behulp van dit SSL-certificaat. Vervolgens worden de berichten opnieuw versleuteld met behulp van het certificaat voor de servers in de back-endpool.