Configurer un écouteur Application Gateway pour le chiffrement

Effectué

Vous avez configuré SSL pour la connexion entre Azure Application Gateway et les serveurs du pool de back-ends. Pour le portail d’expédition, vous devez mettre en place un chiffrement complet de bout en bout. Pour appliquer ce chiffrement, vous devez également chiffrer les messages envoyés par le client à Application Gateway.

Créer un port front-end

Application Gateway reçoit des demandes sur un ou plusieurs ports. Si vous communiquez avec la passerelle sur HTTPS, vous devez configurer un port SSL. En général, HTTPS utilise le port 443. Utilisez la commande az network application-gateway frontend-port create pour créer un port front-end. L’exemple suivant montre comment créer un port front-end pour le port 443 :

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

Configurer un écouteur

Un écouteur attend le trafic entrant à destination de la passerelle sur un port front-end spécifié. Ce trafic est alors routé vers un serveur dans le pool de back-ends. Si le port front-end utilise SSL, vous devez indiquer le certificat à utiliser pour déchiffrer les messages entrants. Le certificat inclut la clé privée.

Vous pouvez ajouter le certificat à l’aide de la commande az network application-gateway ssl-cert create. Le fichier du certificat doit être au format PFX. Parce que ce fichier contient la clé privée, il est probablement aussi protégé par mot de passe. Fournissez le mot de passe dans l’argument cert-password, comme le montre l’exemple suivant.

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>

Vous pouvez ensuite créer l’écouteur qui reçoit des demandes provenant du port front-end et qui les déchiffre à l’aide de ce certificat. Utilisez la commande 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

Définir une règle pour envoyer des demandes HTTPS aux serveurs

La dernière étape consiste à créer une règle qui dirige les messages reçus par le biais de l’écouteur vers les serveurs du pool de back-ends. Les messages reçus à partir du port front-end sont déchiffrés en utilisant le certificat SSL spécifié pour l’écouteur. Vous devez rechiffrer ces messages avec le certificat côté client pour les serveurs du pool de back-ends. Vous définissez ces informations dans la règle.

L’exemple suivant montre comment utiliser la commande az network application-gateway rule create pour créer une règle qui connecte un écouteur à un pool de back-ends. Le paramètre --http-settings spécifie les paramètres HTTP qui référencent le certificat côté client pour les serveurs. Vous avez créé ces paramètres dans l’unité précédente.

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

Vous devez maintenant avoir un chiffrement de bout en bout complet pour les messages routés par le biais d’Application Gateway. Les clients utilisent le certificat SSL pour Application Gateway pour envoyer des messages. Application Gateway déchiffre ces messages en utilisant ce certificat SSL. Il rechiffre ensuite les messages en utilisant le certificat pour les serveurs du pool de back-ends.