Partager via


Isolation réseau dans Azure AI Bot Service

À compter du 1er septembre 2023, il est fortement recommandé d’utiliser la méthode Étiquette de service Azure pour l’isolement réseau. L’utilisation de DL-ASE doit se limiter à des scénarios très spécifiques. Avant de mettre en œuvre cette solution dans un environnement de production, nous vous recommandons de demander conseil à votre équipe de support.

Le présent article couvre les concepts relatifs à l’isolation réseau pour votre bot Azure et ses services dépendants.

Vous pouvez restreindre l’accès à votre bot à un réseau privé. La seule façon de le faire dans Azure AI Bot Service est d’utiliser l’extension App Service Direct Line. Par exemple, vous pouvez utiliser l’extension App Service pour héberger un bot interne à l’entreprise et exiger que les utilisateurs y accèdent depuis le réseau d’entreprise.

Pour obtenir des instructions détaillées sur la configuration de votre bot dans un réseau privé, reportez-vous au guide d’utilisation d’un réseau isolé.

Pour en savoir plus sur les fonctionnalités qui prennent en charge l’isolation réseau, reportez-vous à :

Fonctionnalité Article
Extension App Service Direct Line Extension App Service Direct Line
Réseau virtuel Azure Qu’est-ce que le réseau virtuel Azure ?
Groupes de sécurité réseau Azure Groupes de sécurité réseau
Azure Private Link et points de terminaison privés Qu’est-ce qu’un point de terminaison privé ?
Azure DNS Créer une zone et un enregistrement Azure DNS à partir du portail Azure

Utilisation de points de terminaison privés

Lorsque le point de terminaison de votre bot se trouve dans un réseau virtuel et que les règles appropriées sont définies dans votre groupe de sécurité réseau, vous pouvez restreindre l’accès aux requêtes entrantes et sortantes pour le service d’application de votre bot à l’aide d’un point de terminaison privé.

Les points de terminaison privés sont disponibles dans le service bot avec l’extension App Service Direct Line. Reportez-vous aux conditions requises pour l’utilisation de points de terminaison privés ci-dessous :

  1. Les activités doivent être envoyées vers le point de terminaison de service d’application et à partir de celui-ci.

    L’extension App Service est située au même endroit que le service d’application de votre point de terminaison de bot. Tous les messages à destination et en provenance du point de terminaison sont locaux à votre réseau virtuel et parviennent directement à votre client sans être envoyés à Bot Framework Service.

  2. Pour que l’authentification utilisateur fonctionne, votre client de bot doit communiquer avec le fournisseur de services, à l’exemple de Microsoft Entra ID ou GitHub, et le point de terminaison de jeton.

    Si votre client bot se trouve dans votre réseau virtuel, vous devrez autoriser les deux points de terminaison à partir de votre réseau virtuel. Pour ce faire, utilisez des étiquettes de service pour le point de terminaison de jeton. Votre point de terminaison de bot lui-même doit également accéder au point de terminaison de jeton, comme décrit ci-dessous.

  3. Avec l’extension App Service, votre point de terminaison de bot et l’extension App Service doivent envoyer des demandes HTTPS sortantes aux services Bot Framework.

    Ces demandes concernent diverses opérations méta, telles que la récupération de la configuration de votre bot ou la récupération de jetons à partir du point de terminaison des jetons. Pour faciliter ces demandes, vous devez installer et configurer un point de terminaison privé.

Comment le service bot implémente des points de terminaison privés

Il existe deux scénarios principaux dans lesquels les points de terminaison privés sont utilisés :

  • Pour que votre bot accède au point de terminaison de jeton.
  • Pour que l’extension de canal Direct Line accède au service Bot.

Un point de terminaison privé projette les services requis dans votre réseau virtuel, de sorte qu’ils sont disponibles directement dans votre réseau, sans exposer votre réseau virtuel à Internet ni autoriser la mise sur liste verte d’adresses IP. Tout le trafic passant par un point de terminaison privé passe par les serveurs internes Azure pour vous assurer que votre trafic n’est pas transmis à Internet.

Le service utilise deux sous-ressources, Bot et Token, pour projeter des services dans votre réseau. Lorsque vous ajoutez un point de terminaison privé, Azure génère un enregistrement DNS spécifique au bot pour chaque sous-ressource et configure le point de terminaison dans le groupe de zones DNS. Les points de terminaison de différents bots qui ciblent la même sous-ressource peuvent ainsi être distingués, tout en réutilisant la même ressource du groupe de zones DNS.

Exemple de scénario

Supposons que vous disposez d’un bot nommé SampleBot et d’un service d’application correspondant. De plus, le service d’application SampleBot.azurewebsites.net sert de point de terminaison de la messagerie pour ce bot. Vous configurez un point de terminaison privé pour SampleBot avec Bot comme type de sous-ressource dans le Portail Azure pour le cloud public, ce qui crée un groupe de zones DNS avec un enregistrement Acorrespondant à SampleBot.botplinks.botframework.com. Cet enregistrement DNS correspond à une IP locale dans votre réseau virtuel. De même, l’utilisation du type de sous-ressource Token génère le point de terminaison SampleBot.bottoken.botframework.com.

L’enregistrement A dans la zone DNS que vous avez créée est mappé à une adresse IP au sein de votre réseau virtuel. Ainsi, les demandes envoyées à ce point de terminaison sont locales à votre réseau et ne violent pas les règles de votre groupe de sécurité réseau ou du pare-feu Azure qui limitent le trafic sortant de votre réseau. La couche Azure Networking et les services Bot Framework garantissent que vos demandes ne sont pas divulguées sur l’internet public et que l’isolement est maintenu pour votre réseau.