Partager via


Intégrer votre environnement App Service ILB à l’aide de la passerelle d’application Azure

L’environnement Azure App Service est un déploiement d’Azure App Service dans le sous-réseau du réseau virtuel Azure d’un client. Il peut être déployé avec un point de terminaison externe ou interne pour accéder aux applications. Le déploiement d’App Service Environment avec un point de terminaison interne est appelé un App Service Environment (ASE) avec équilibreur de charge interne (ILB).

Les pare-feu d’applications web permettent de sécuriser vos applications web en inspectant le trafic web entrant pour bloquer les injections SQL, les attaques XSS, les téléchargements de programmes malveillants, les attaques DDoS, ainsi que les autres attaques. Vous pouvez obtenir un appareil WAF à partir de la Place de marché Azure ou vous pouvez utiliser Azure Application Gateway.

Azure Application Gateway est une appliance virtuelle qui fournit l’équilibrage de charge de couche 7, le déchargement TLS et la protection du pare-feu d’applications web (WAF). Elle peut écouter sur une adresse IP publique et acheminer le trafic jusqu’au point de terminaison de votre application. Les informations suivantes expliquent comment intégrer une passerelle d’application configurée avec le WAF à une application dans un environnement App Service ILB.

L’intégration de la passerelle d’application à l’environnement App Service ILB se fait au niveau de l’application. Quand vous configurez la passerelle d’application avec votre environnement App Service ILB, vous le faites pour des applications spécifiques dans cet environnement.

Capture d’écran du diagramme d’intégration de haut niveau

Lors de cette procédure pas à pas, vous allez :

  • Créez une passerelle Azure Application Gateway.
  • Configurer la passerelle d’application pour pointer vers une application dans votre environnement App Service ILB
  • Modifier le nom d’hôte DNS public qui pointe vers votre passerelle d’application

Prérequis

Pour intégrer votre passerelle d’application à votre environnement App Service ILB, les éléments suivants sont nécessaires :

  • Un environnement App Service ILB.
  • Une zone DNS privée pour App Service Environment ILB.
  • Une application exécutée dans l’environnement App Service ILB.
  • Un nom DNS public pour votre passerelle d’application.
  • Si vous devez utiliser le chiffrement TLS sur la passerelle applicative, un certificat public valide utilisé pour la liaison à votre passerelle applicative est requis.

App Service Environment ILB

Pour plus d’informations sur la création d’un App Service Environment ILB, consultez Créer un App Service Environment dans le portail Microsoft Azure et Créer un App Service Environment avec un modèle Azure Resource Manager.

  • Une fois l’App Service Environment ILB créé, le domaine par défaut est <YourAseName>.appserviceenvironment.net.

    Capture d’écran de la vue d’ensemble de l’App Service Environment ILB.

  • Un équilibreur de charge interne est provisionné pour l’accès entrant. Vous pouvez vérifier l’adresse entrante dans les adresses IP sous Paramètres d’App Service Environment. Vous pouvez créer ultérieurement une zone DNS privée mappée à cette adresse IP.

    Capture d’écran de l’obtention de l’adresse entrante à partir des paramètres d’adresses IP d’App Service Environment ILB.

Zone DNS privée

Vous avez besoin d’une zone DNS privée pour la résolution de noms interne. Créez la zone à l’aide du nom de l’App Service Environment à l’aide des jeux d’enregistrements indiqués dans le tableau suivant (pour obtenir des instructions, consultez Démarrage rapide : créer une zone Azure DNS privée avec le portail Microsoft Azure).

Nom Type Valeur
* Un Adresse entrante de l’App Service Environment
@ A Adresse entrante de l’App Service Environment
@ SOA Nom DNS de l’App Service Environment
*.scm Un Adresse entrante de l’App Service Environment

App Service sur l’App Service Environment ILB

Vous devez créer un plan App Service et une application dans votre App Service Environment ILB. Lorsque vous créez l’application dans le portail, sélectionnez votre App Service Environment ILB en tant que région.

Un nom DNS public à la passerelle applicative

Pour vous connecter à la passerelle applicative à partir d’Internet, vous avez besoin d’un nom de domaine routable. Dans ce cas, j’ai utilisé un nom de domaine routable asabuludemo.com et je prévois de me connecter à App Service avec ce nom de domaine app.asabuludemo.com. Les adresses IP mappées à ce nom de domaine d’application doivent être définies sur l’adresse IP publique d’Application Gateway après la création de la passerelle applicative. Avec un domaine public mappé à la passerelle applicative, vous n’avez pas besoin de configurer un domaine personnalisé dans App Service. Vous pouvez ajouter un nom de domaine personnalisé avec Domaines App Service.

Certificat public valide

Pour améliorer la sécurité, liez un certificat TLS pour le chiffrement de la session. Pour lier le certificat TLS à la passerelle applicative, un certificat public valide avec les informations suivantes est nécessaire. Avec Certificats App Service, vous pouvez acheter un certificat TLS et l’exporter au format .pfx.

Nom Valeur Description
Nom commun <yourappname>.<yourdomainname>, par exemple : app.asabuludemo.com
ou *.<yourdomainname>, par exemple : *.asabuludemo.com
Un certificat standard ou un certificat générique pour la passerelle applicative
Autre nom de l’objet <yourappname>.scm.<yourdomainname>, par exemple : app.scm.asabuludemo.com
ou *.scm.<yourdomainname>, par exemple : *.scm.asabuludemo.com
Le réseau SAN qui permet de se connecter au service Kudu App Service. Il s’agit d’un paramètre facultatif si vous ne souhaitez pas publier le service Kudu App Service sur Internet.

Le fichier de certificat doit avoir une clé privée et être enregistré au format .pfx. Le certificat est importé dans la passerelle applicative ultérieurement.

Créer une passerelle Application Gateway

Pour la création de la passerelle applicative de base, reportez-vous à la section Tutoriel : créer une passerelle applicative avec un pare-feu d’applications web à l’aide du portail Azure.

Dans ce tutoriel, nous allons utiliser le portail Microsoft Azure pour créer une passerelle applicative avec l’App Service Environment ILB.

Dans le portail Azure, sélectionnez Nouveau>Réseau>Application Gateway pour créer une passerelle applicative.

  1. Paramètre de base

    Dans la liste déroulante Niveau, vous pouvez sélectionner Standard V2 ou WAF pour activer la fonctionnalité WAF sur la passerelle applicative.

  2. Paramètre front-end

    Sélectionnez le type d’adresse IP front-end Public, Privé ou Les deux. Si vous définissez Privé ou Les deux, vous devez attribuer une adresse IP statique dans la plage de sous-réseau de la passerelle applicative. Dans ce cas, nous définissons l’adresse IP sur Public pour le point de terminaison public uniquement.

    • Adresse IP publique : vous devez associer une adresse IP publique pour l’accès public de la passerelle applicative. Enregistrez cette adresse IP. Vous devez ajouter un enregistrement dans votre service DNS ultérieurement.

      Capture d’écran montrant l’obtention d’une adresse IP publique à partir du paramètre front-end de la passerelle applicative.

  3. Paramètre des serveurs back-end

    Entrez un nom de pool back-end et sélectionnez App Services ou Adresse IP ou nom de domaine complet (FQDN) dans Type de cible. Dans ce cas, nous sélectionnons App Service, puis le nom App Service dans la liste déroulante de la cible.

    Capture d’écran montrant l’ajout d’un nom du pool back-end dans le paramètre back-end.

  4. Paramètre de configuration

    Dans paramètre Configuration, vous devez ajouter une règle d’acheminement en sélectionnant l’icône Ajouter une règle d’acheminement.

    Capture d’écran de l’ajout d’une règle d’acheminement dans le paramètre de configuration.

    Vous devez configurer un écouteur et des cibles back-end dans une règle d’acheminement. Vous pouvez ajouter un écouteur HTTP pour le déploiement de la preuve de concept ou ajouter un écouteur HTTPS pour l’amélioration de la sécurité.

    • Pour vous connecter à la passerelle applicative avec le protocole HTTP, vous pouvez créer un écouteur avec les paramètres suivants,

      Paramètre active Description
      Nom de la règle Par exemple : http-routingrule Nom du routage
      Nom de l’écouteur Par exemple : http-listener Nom de l’écouteur
      Adresse IP du front-end Public Pour l’accès à Internet, définir sur Public
      Protocol HTTP Ne pas utiliser le chiffrement TLS
      Port 80 Port HTTP par défaut
      Type d’écouteur Multisite Autoriser à écouter plusieurs sites sur la passerelle applicative
      Type d’hôte Multiple/caractère générique Définissez sur un nom de site web générique ou multiple si le type d’écouteur est défini sur plusieurs sites.
      Nom de l’hôte Par exemple : app.asabuludemo.com Définir sur un nom de domaine routable pour App Service

      Capture d’écran de l’écouteur HTTP de la règle d’acheminement de la passerelle applicative.

    • Pour vous connecter à la passerelle applicative avec le chiffrement TLS, vous pouvez créer un écouteur avec les paramètres suivants :

      Paramètre active Description
      Nom de la règle Par exemple : https-routingrule Nom du routage
      Nom de l’écouteur Par exemple : https-listener Nom de l’écouteur
      Adresse IP du front-end Public Pour l’accès à Internet, définir sur Public
      Protocol HTTPS Utiliser le chiffrement TLS
      Port 443 Port HTTPS par défaut
      Paramètres HTTPS Téléchargement d'un certificat Chargez un certificat qui contient le nom commun et la clé privée au format .pfx.
      Type d’écouteur Multisite Autoriser à écouter plusieurs sites sur la passerelle applicative
      Type d’hôte Multiple/caractère générique Définissez sur un nom de site web générique ou multiple si le type d’écouteur est défini sur plusieurs sites.
      Nom de l’hôte Par exemple : app.asabuludemo.com Définir sur un nom de domaine routable pour App Service

      Écouteur HTTPS de la règle d’acheminement de passerelle applicative.

    • Vous devez configurer un Pool back-end et un Paramètre HTTP dans les Cibles back-end. Le pool back-end a été configuré lors des étapes précédentes. Sélectionnez le lien Ajouter nouveau pour ajouter un paramètre HTTP.

      Capture d’écran du lien Ajouter nouveau pour ajouter un paramètre HTTP.

    • Paramètres HTTP répertoriés dans le tableau suivant :

      Paramètre active Description
      Nom du paramètre HTTP Par exemple : https-setting Nom du paramètre HTTP
      Protocole back-end HTTPS Utiliser le chiffrement TLS
      Port principal 443 Port HTTPS par défaut
      Utiliser le certificat de l’autorité de certification connue Oui Le nom de domaine par défaut de l’App Service Environment ILB est .appserviceenvironment.net. Le certificat de ce domaine est émis par une autorité racine publique approuvée. Dans le paramètre Certificat racine approuvé, vous pouvez définir d’utiliser un certificat racine approuvé d’autorité de certification connu.
      Substituer avec le nouveau nom d’hôte Oui L’en-tête du nom d’hôte est remplacé lors de la connexion à l’application sur l’App Service Environment ILB
      Remplacement du nom d’hôte Choisir un nom d’hôte à partir d’une cible de back-end Quand vous définissez le pool back-end sur App Service, vous pouvez choisir l’hôte à partir de la cible de back-end
      Créer des sondes personnalisées Non Utiliser la sonde d’intégrité par défaut

      Capture d’écran de la boîte de dialogue **Ajouter un paramètre HTTP**.

Configurer une intégration de passerelle applicative à l’App Service Environment ILB

Pour accéder à l’App Service Environment ILB à partir de la passerelle applicative, vous devez vérifier si un réseau virtuel est lié à une zone DNS privée. Si aucun réseau virtuel n’est lié au réseau virtuel de votre passerelle applicative, ajoutez une liaison de réseau virtuel en procédant comme suit.

  • Pour configurer la liaison de réseau virtuel avec une zone DNS privée, accédez au plan de configuration de la zone DNS privée. Sélectionner les Liens de réseau virtuel>Ajouter

Ajoutez une liaison de réseau virtuel vers la zone DNS privée.

  • Entrez le Nom de la liaison et sélectionnez respectivement l’abonnement et le réseau virtuel dans lesquels réside la passerelle applicative.

Capture d’écran des détails de l’ajout d’un nom de liaison pour le paramètre de liaisons de réseau virtuel dans la zone DNS privée.

  • Vous pouvez vérifier l’état d’intégrité du serveur back-end à partir de l’intégrité du serveur back-end dans le plan de la passerelle applicative.

Capture d’écran de la confirmation de l’état d’intégrité à partir de l’intégrité back-end.

Ajouter un enregistrement DNS public

Vous devez configurer un mappage DNS approprié pour accéder à la passerelle applicative à partir d’Internet.

  • L’adresse IP publique de la passerelle applicative se trouve dans Configurations d’adresses IP frontales dans le plan de la passerelle applicative.

L’adresse IP front-end de la passerelle applicative est disponible dans la configuration de l’adresse IP front-end.

  • Utilisez le service Azure DNS comme exemple, vous pouvez ajouter un jeu d’enregistrements pour mapper le nom de domaine d’application à l’adresse IP publique de la passerelle applicative.

Capture d’écran montrant l’ajout d’un jeu d’enregistrements pour mapper le nom de domaine d’application à l’adresse IP publique de la passerelle applicative.

Valider la connexion

  • Sur un ordinateur qui accède à partir d’Internet, vous pouvez vérifier la résolution de noms pour le nom de domaine de l’application à l’adresse IP publique de la passerelle applicative.

validez la résolution de noms à partir d’une invite de commandes.

  • Sur un ordinateur qui accède à partir d’Internet, testez l’accès web à partir d’un navigateur.

Capture d’écran de l’ouverture d’un navigateur, accès au web.