Partager via


Configurer App Service avec Application Gateway

Azure Application Gateway vous permet d’avoir une application App Service ou un autre service multilocataire en tant que membre de pool principal. Dans cet article, vous allez apprendre à configurer une application App Service avec Application Gateway. La configuration d’Application Gateway diffère selon la façon dont App Service est accessible :

  • La première option repose sur l’utilisation d’un domaine personnalisé dans Application Gateway et App Service au niveau du back-end.
  • La deuxième option consiste à permettre à Application Gateway d'accéder à App Service à l’aide de son domaine par défaut, suffixé par «.azurewebsite.net».

Cette configuration est recommandée pour les scénarios de niveau production et respecte le principe de pas modifier le nom d’hôte dans le flux de requête. Vous devez disposer d’un domaine personnalisé (et d’un certificat associé) pour éviter d’avoir à compter sur la valeur par défaut . Domaine Azurewebsite.

Le même nom de domaine pour Application Gateway et App Service dans le pool principal, le flux de requête n’a pas besoin de remplacer le nom d’hôte. L’application web principale voit l’hôte d’origine tel qu’il a été utilisé par le client.

Vue d’ensemble du scénario pour Application Gateway vers App Service à l’aide du même domaine personnalisé pour les deux

Dans cet article, vous apprendrez comment :

  • Configurer DNS
  • Ajouter App Service en tant que pool back-end à Application Gateway
  • Configurer les paramètres HTTP pour la connexion à App Service
  • Configurer un écouteur HTTP
  • Créer une règle de routage de requête

Prérequis

Configuration du DNS

Dans le contexte de ce scénario, DNS est pertinent à deux endroits :

  • Le nom DNS, que l’utilisateur ou le client utilise pour Application Gateway et ce qui apparaît dans un navigateur
  • Le nom DNS, dont se sert en interne Application Gateway pour accéder à App Service au niveau du back-end

Routez l’utilisateur ou le client vers Application Gateway en utilisant le domaine personnalisé. Configurez DNS en utilisant un alias CNAME pointant vers le DNS d’Application Gateway. L’adresse DNS d’Application Gateway figure dans la page de présentation de l’adresse IP publique associée. Vous pouvez aussi créer un enregistrement A pointant directement vers l’adresse IP. (Dans le cas d’Application Gateway V1, l’adresse IP virtuelle peut changer si vous arrêtez et démarrez le service, ce qui rend cette option indésirable.)

App Service doit être configuré de façon à accepter le trafic en provenance d’Application Gateway en utilisant le nom de domaine personnalisé comme hôte entrant. Pour plus d’informations sur la façon de mapper un domaine personnalisé à App Service, consultez Tutoriel : Mapper un nom DNS personnalisé existant à Azure App Service. Pour vérifier le domaine, App Service exige uniquement l’ajout d’un enregistrement TXT. Les enregistrements CNAME ou A n’ont pas besoin d’être modifiés. La configuration DNS pour le domaine personnalisé reste dirigée vers Application Gateway.

Pour accepter les connexions à App Service via HTTP, configurez sa liaison TLS. Pour plus d’informations, consultez Sécuriser un nom DNS personnalisé avec une liaison TLS/SSL dans Azure App Service. Configurez App Service pour récupérer le certificat du domaine personnalisé depuis Azure Key Vault.

Ajouter un service d’application comme pool de back-ends

  1. Sur le portail Azure, sélectionnez votre passerelle Application Gateway.

  2. Sous Pools principaux, sélectionnez le pool principal.

  3. Sous Type de cible, sélectionnez App Services.

  4. Sous Cible, sélectionnez votre App Service.

    Service d’application comme back-end

    Remarque

    La liste déroulante remplit uniquement les services d’application qui se trouvent dans le même abonnement que votre application Gateway. Si vous souhaitez utiliser un service d’application qui se trouve dans un abonnement différent de celui dans lequel l’Application Gateway est, au lieu de choisir App Services dans la liste déroulante Cibles , choisissez l’adresse IP ou l’option nom d’hôte et entrez le nom d’hôte (example.azurewebsites.net) du service d’application. Si vous utilisez des points de terminaison privés avec votre App Service, vous devez utiliser le nom de domaine complet ou l’adresse IP du point de terminaison privé à la place.

  5. Sélectionnez Enregistrer.

Modifier les paramètres HTTP pour App Service

Un paramètre HTTP est nécessaire pour donner instruction à Application Gateway d’accéder au back-end App Service en utilisant le nom de domaine personnalisé. Le paramètre HTTP est par défaut utiliser la sonde d’intégrité par défaut. Bien que les sondes d’intégrité par défaut transfèrent les requêtes avec le nom d’hôte dans lequel le trafic est reçu, les sondes d’intégrité peuvent utiliser 127.0.0.1 comme nom d’hôte vers le pool principal, car aucun nom d’hôte n’a été défini explicitement. Pour cette raison, vous devez créer une sonde d’intégrité personnalisée configurée avec le nom de domaine personnalisé approprié en guise de nom d’hôte.

Nous nous connectons au back-end à l’aide du protocole HTTPS.

  1. Sous Paramètres HTTP, sélectionnez un paramètre HTTP existant ou ajoutez-en un nouveau.
  2. Attribuez un nom au paramètre HTTP que vous créez
  3. Sélectionnez HTTPS comme protocole back-end souhaité en utilisant le port 443
  4. Si le certificat est signé par une autorité reconnue, sélectionnez « Oui » pour « Certificat d'autorité de certification reconnue par l'utilisateur ». Vous pouvez aussi Ajouter des certificats racines d’authentification/approuvés pour les serveurs de back-end
  5. Veillez à définir « Remplacer par le nouveau nom d’hôte » sur « Non »
  6. Sélectionnez la sonde d’intégrité HTTPS personnalisée dans la liste déroulante pour « Sonde personnalisée ».

Configurer les paramètres HTTP pour utiliser un domaine personnalisé vers le back-end App Service sans remplacement

Configurer un écouteur HTTP

Pour accepter le trafic, nous devons configurer un écouteur. Pour plus d’informations sur l’écouteur, consultez la configuration de l’écouteur Application Gateway.

  1. Ouvrez la section « Écouteurs » et choisissez « Ajouter un écouteur » ou sélectionnez un écouteur existant à modifier.
  2. S’il s’agit d’un nouvel écouteur, donnez-lui un nom
  3. Sous « IP frontale », sélectionnez l’adresse IP sur laquelle écouter
  4. Sous « Port », sélectionnez 443
  5. Sous « Protocole », sélectionnez « HTTPS »
  6. Sous « Choisir un certificat », sélectionnez « Choisir un certificat dans Key Vault ». Pour plus d’informations, consultez Utilisation de Key Vault où vous trouverez plus d’informations sur la façon d’affecter une identité managée et de lui fournir des droits sur votre coffre de clés.
    1. Attribuez un nom au certificat
    2. Sélectionnez l’identité managée
    3. Sélectionner le coffre de clés dans lequel récupérer le certificat
    4. Sélectionner le certificat
  7. Sous « Type d’écouteur », sélectionnez « De base »
  8. Sélectionnez « Ajouter » pour ajouter l’écouteur

Ajouter un écouteur pour le trafic H T T P S

Configurer une règle de routage des demandes

Le Backend Pool précédemment configuré et les paramètres HTTP, la règle de routage des requêtes peut être configurée pour acheminer le trafic à partir d’un écouteur et le diriger vers le Backend Pool en utilisant les paramètres HTTP. Pour cela, vérifiez que vous disposez d’un écouteur HTTP ou HTTPS disponible qui n’est pas déjà lié à une règle de routage existante.

  1. Sous « Règles », sélectionnez pour ajouter une nouvelle « règle de routage des demandes »
  2. Attribuez un nom à la règle
  3. Sélectionnez un écouteur HTTP ou HTTPS qui n’est pas encore lié à une règle de routage existante
  4. Sous « Cibles de back-end », choisissez le pool de back-ends dans lequel App Service a été configuré
  5. Configurez les paramètres HTTP avec lesquels Application Gateway doit se connecter au back-end App Service
  6. Sélectionnez « Ajouter » pour enregistrer cette configuration

Ajouter une nouvelle règle de routage à partir de l’écouteur au pool de back-ends App Service en utilisant les paramètres HTTP configurés

Test

Avant de commencer, vérifiez que l’état du back-end est sain :

Ouvrez la section « Intégrité du back-end » et vérifiez que la colonne « État » indique la combinaison pour le paramètre HTTP et le pool principal comme « Sain ».

Vérifier l’intégrité du back-end dans le portail Azure

À présent, accédez à l’application web en utilisant le domaine personnalisé que vous avez associé à Application Gateway et à App Service au niveau du back-end.

Restriction de l’accès

Les applications web déployées dans ces exemples utilisent des adresses IP publiques qui sont accessibles directement à partir d’Internet. La résolution des problèmes s’en trouve facilitée quand vous découvrez une nouvelle fonctionnalité et essayez de nouvelles choses. Toutefois, si vous envisagez de déployer une fonctionnalité en production, vous souhaitez ajouter d’autres restrictions. Considérez les options suivantes :