Een Application Gateway-listener configureren voor versleuteling
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.