Partager via


Multilocataire et Azure Private Link

Azure Private Link fournit l’adressage IP privé pour les services de plateforme Azure et pour vos propres applications hébergées sur des machines virtuelles Azure. Vous pouvez utiliser Private Link pour activer la connectivité privée à partir des environnements Azure de vos locataires. Les locataires peuvent également utiliser Private Link pour accéder à votre solution à partir de leurs environnements locaux, lorsqu’ils sont connectés via des passerelles de réseau privé virtuel (passerelle VPN) ou ExpressRoute.

Azure Private Link est utilisé par de nombreux fournisseurs SaaS de grande taille, notamment Snowflake, Confluent Cloud et MongoDB Atlas.

Dans cet article, nous allons examiner la façon dont vous pouvez configurer Private Link pour une solution multilocataire hébergée par Azure.

Considérations relatives aux clés

Espaces d’adressage IP qui se chevauchent

Private Link fournit des fonctionnalités puissantes pour les solutions mutualisées, où les locataires peuvent accéder au service via des espaces d’adressage privés.

Différents locataires utilisent fréquemment les mêmes espaces d’adressage IP privés ou qui se chevauchent. Par exemple, votre solution mutualisée peut utiliser l’espace d’adressage IP 10.1.0.0/16. Supposons que le locataire A utilise son propre réseau local avec le même espace d’adressage IP, et que le locataire B utilise également le même espace d’adressage IP. Vous ne pouvez pas connecter ou appairer directement vos réseaux, car les plages d’adresses IP se chevauchent.

Lorsque vous utilisez Private Link pour permettre la connectivité de chaque locataire à la solution multilocataire, la traduction d’adresses réseau (NAT) est automatiquement appliquée au trafic de chaque locataire. Chaque locataire peut utiliser une adresse IP privée au sein de son propre réseau respectif, et le trafic transite de manière transparente vers la solution mutualisée. Private Link effectue une traduction d’adresses réseau sur le trafic, même lorsque les locataires et le fournisseur de services utilisent tous des plages d’adresses IP qui se chevauchent :

Diagramme montrant la connectivité entre deux locataires et un service multilocataire, qui utilisent le même espace d'adresses IP.

Lorsque le trafic parvient à la solution mutualisée, il a déjà été traduit. Cela signifie que le trafic semble provenir de l’espace d’adressage IP du réseau virtuel du service multilocataire. Private Link fournit la fonctionnalité TCP Proxy Protocol v2, qui permet à un service multilocataire de connaître le locataire qui a envoyé la requête, et même l’adresse IP d’origine du réseau source.

Sélection du service

Lorsque vous utilisez Private Link, il est important de prendre en compte le service auquel vous souhaitez autoriser la connectivité entrante.

Le service Azure Private Link est utilisé avec des machines virtuelles derrière un équilibreur de charge standard.

Vous pouvez également utiliser Private Link avec d’autres services Azure. Ces services incluent des plateformes d’hébergement d’applications telles que Azure App Service. Ils incluent également Azure Application Gateway ou Gestion des API Azure, qui sont des passerelles réseau et d’API.

La plateforme d’application que vous utilisez détermine de nombreux aspects de votre configuration Private Link et les limites qui s’appliquent. De plus, certains services ne prennent pas en charge Private Link pour le trafic entrant. Consultez la documentation des services Azure que vous utilisez pour comprendre leur support pour Private Link.

limites

Examinez soigneusement le nombre de points de terminaison privés que vous pouvez créer, en fonction de l’architecture de votre solution. Si vous utilisez une plateforme d’application PaaS (platform as a service), il est important de connaître le nombre maximal de points de terminaison privés qu’une seule ressource peut prendre en charge. Si vous exécutez des machines virtuelles, vous pouvez attacher une instance de service Private Link à un équilibreur de charge standard (SLB). Dans cette configuration, vous pouvez généralement connecter un nombre plus élevé de points de terminaison privés, mais les limites s’appliquent toujours. Ces limites peuvent déterminer le nombre de locataires que vous pouvez connecter à vos ressources à l’aide de Private Link. Passez en revue les Limites, quotas et contraintes d’abonnement Azure et de service pour comprendre les limites du nombre de points de terminaison et de connexions.

De plus, certains services nécessitent une configuration réseau spécialisée pour utiliser Private Link. Par exemple, si vous utilisez Private Link avec Azure Application Gateway, vous devez approvisionner un sous-réseau dédié, en plus du sous-réseau standard pour la ressource Application Gateway.

Testez soigneusement votre solution, y compris votre déploiement et votre configuration de diagnostic, avec votre configuration Private Link activée. Lorsque des points de terminaison privés sont activés sur certains services Azure, le trafic Internet public est bloqué. Ce comportement peut nécessiter de modifier vos processus de déploiement et de gestion.

Vous pouvez choisir de déployer votre solution pour qu’elle soit accessible sur Internet et qu’elle soit également exposée via des points de terminaison privés. Par exemple, certains de vos locataires peuvent nécessiter une connectivité privée tandis que d’autres dépendent de la connectivité Internet publique. Considérez votre topologie réseau globale et les chemins d’accès que suit le trafic de chaque locataire.

Lorsque votre solution est basée sur des machines virtuelles situées derrière un équilibreur de charge standard, vous pouvez exposer votre point de terminaison via le service Private Link. Dans ce cas, un pare-feu d’applications web et un routage d’application font probablement déjà partie de votre charge de travail basée sur une machine virtuelle.

De nombreux services PaaS Azure prennent en charge Private Link pour la connectivité entrante, même entre différents abonnements Azure et locataires Microsoft Entra. Vous pouvez utiliser les fonctionnalités Private Link de ce service pour exposer votre point de terminaison.

Lorsque vous utilisez d’autres services accessibles sur Internet, comme Azure Front Door, il est important de déterminer s’ils prennent en charge Private Link pour le trafic entrant. Si ce n’est pas le cas, réfléchissez à la façon dont votre trafic transite par chaque chemin d’accès à votre solution.

Par exemple, supposons que vous génériez une application accessible sur Internet qui s’exécute sur un groupe de machines virtuelles identiques. Vous utilisez Azure Front Door, y compris son pare-feu d’applications web (WAF), pour la sécurité et l’accélération du trafic, et vous configurez Front Door pour envoyer son trafic via un point de terminaison privé à votre service principal (origine). Le locataire A se connecte à votre solution à l’aide d’un point de terminaison public, et le locataire B se connecte à l’aide d’un point de terminaison privé. Comme Front Door ne prend pas en charge Private Link pour les connexions entrantes, le trafic du locataire B contourne votre Front Door et son WAF :

Diagramme montrant les requêtes arrivant via Azure Front Door, mais également via un point de terminaison privé, qui contourne Front Door.

Modèles d’isolation

Private Link est conçu pour prendre en charge les scénarios où un seul niveau d’application peut être utilisé par plusieurs clients distincts, tels que vos locataires. Lorsque vous envisagez l’isolation pour Private Link, la principale préoccupation concerne le nombre de ressources qui doivent être déployées pour répondre à vos exigences. Les modèles d’isolation des locataires que vous pouvez utiliser pour Private Link dépendent du service que vous utilisez.

Si vous utilisez Private Link service avec des machines virtuelles derrière un équilibreur de charge standard, vous pouvez prendre en compte plusieurs modèles d’isolation.

Considération Service Private Link partagé et équilibreur de charge partagé Service Private Link dédié et équilibreur de charge dédié Service Private Link dédié et équilibreur de charge partagé
Complexité du déploiement Faible Moyenne à haute, en fonction du nombre de locataires Moyenne à haute, en fonction du nombre de locataires
Complexité opérationnelle Faible Moyenne à haute, en fonction du nombre de ressources Moyenne à haute, en fonction du nombre de ressources
Limites à prendre en compte Nombre de points de terminaison privés sur le même service Private Link Nombre de services Private Link par abonnement Nombre de services Private Link par équilibreur de charge standard
Exemple de scénario Solution multilocataire volumineuse avec une couche Application partagée Tampons de déploiement distincts pour chaque locataire Couche Application partagée dans un tampon unique, avec un grand nombre de locataires

Dans les trois modèles, le niveau d’isolation et de performances des données dépend des autres éléments de votre solution, et le déploiement du service Private Link n’affecte pas ces facteurs de manière matérielle.

Vous pouvez envisager de déployer un service Private Link partagé, qui est connecté à un équilibreur de charge standard. Chacun de vos locataires peut créer un point de terminaison privé et l’utiliser pour se connecter à votre solution.

Une seule instance de service Private Link prend en charge un grand nombre de points de terminaison privés. Si vous épuisez la limite, vous pouvez déployer davantage d’instances de service Private Link bien qu’il existe également des limites au nombre de services Private Link que vous pouvez déployer sur un seul équilibreur de charge. Si vous vous attendez à vous approcher de ces limites, envisagez d’utiliser une approche basée sur les tampons de déploiement et de déployer des équilibreurs de charge partagés et des instances de service Private Link dans chaque empreinte.

Vous pouvez déployer un service Private Link dédié et un équilibreur de charge dédié pour chaque locataire. Cette approche est logique lorsque vous disposez d’un ensemble dédié de machines virtuelles pour chaque locataire, par exemple lorsque vos locataires ont des exigences de conformité strictes.

Vous pouvez également déployer des instances de service Private Link dédiées pour chaque locataire, avec un équilibreur de charge standard partagé. Toutefois, ce modèle est peu susceptible d’offrir d’avantages notables. En outre, comme qu’il existe un nombre maximal de services Private Link que vous pouvez déployer sur un seul équilibreur de charge standard, ce modèle n’est pas susceptible d’être mis à l’échelle au-delà d’une petite solution multilocataire.

Le plus souvent, vous pouvez déployer plusieurs services Private Link partagés. Cette approche vous permet d’étendre le nombre de points de terminaison privés que votre solution peut prendre en charge sur un équilibreur de charge partagé.

Modèles d’isolation pour les services PaaS Azure avec des points de terminaison privés

Lorsque vous déployez des services de plateforme en tant que service (PaaS) Azure et que vous souhaitez permettre aux locataires d’accéder à ces services avec des points de terminaison privés, tenez compte des capacités et des contraintes du service spécifique. De plus, considérez si les ressources de votre couche d’application sont dédiées à un locataire spécifique ou si elles sont partagées entre plusieurs locataires.

Si vous déployez un ensemble dédié de ressources de la couche Application pour chaque locataire, il est probable que vous puissiez déployer un point de terminaison privé utilisable par ce locataire puisse utiliser pour accéder à ses ressources. Il est peu probable que vous épuisiez les limites de service liées à Private Link, car chaque locataire dispose de ses propres ressources dédiées.

Lorsque vous partagez des ressources de la couche Application entre des locataires, vous pouvez envisager de déployer un point de terminaison privé pour chaque locataire. Il existe des limites sur le nombre de points de terminaison privés qui peuvent être attachés à une seule ressource, et ces limites sont différentes pour chaque service.

Private Link dispose de plusieurs fonctionnalités utiles dans un environnement multilocataire. Toutefois, les fonctionnalités spécifiques disponibles dépendent du service que vous utilisez. Pour les machines virtuelles et les équilibreurs de charge, le service de base Azure Private Link prend en charge toutes les fonctionnalités décrites ci-dessous. D’autres services avec la prise en charge de Private Link peuvent fournir uniquement un sous-ensemble de ces fonctionnalités.

Alias de service

Lorsqu’un locataire configure l’accès à votre service à l’aide de Private Link, il doit être en mesure d’identifier votre service afin qu’Azure puisse établir la connexion.

Le service Private Link et certains autres services Azure compatibles avec Private Link vous permettent de configurer un alias que vous fournissez à vos locataires. En utilisant un alias, vous évitez de divulguer vos ID d’abonnement Azure et les noms de groupes de ressources.

Visibilité du service

Le service Private Link vous permet de contrôler la visibilité de votre point de terminaison privé. Vous pouvez autoriser tous les clients Azure à se connecter à votre service s’ils connaissent son alias ou son ID de ressource. Vous pouvez également restreindre l’accès à un ensemble de clients Azure connus.

Vous pouvez également spécifier un ensemble d’ID d’abonnement Azure pré-approuvés qui peuvent se connecter à votre point de terminaison privé. Si vous choisissez d’utiliser cette approche, réfléchissez à la façon dont vous allez collecter et autoriser les ID d’abonnement. Par exemple, vous pouvez fournir une interface utilisateur d’administration dans votre application pour collecter l’ID d’abonnement d’un locataire. Ensuite, vous pouvez reconfigurer dynamiquement votre instance de service Private Link afin de pré-approuver cet ID d’abonnement pour les connexions.

Approbations de connexion

Une fois qu’une connexion a été demandée entre un client (comme un locataire) et un point de terminaison privé, Private Link exige que la connexion soit approuvée. Tant que la connexion n’est pas approuvée, le trafic ne peut pas transiter par la connexion de point de terminaison privé.

Le service Private Link prend en charge plusieurs types de flux d’approbation, notamment :

  • Approbation manuelle, où votre équipe approuve explicitement chaque connexion. Cette approche est viable lorsque vous n’avez que quelques locataires qui utilisent votre service via Private Link.
  • Approbation basée sur l’API, où le service Private Link traite la connexion comme nécessitant une approbation manuelle, et votre application utilise l’API Mettre à jour la connexion de point de terminaison privé, Azure CLI ou Azure PowerShell pour approuver une connexion. Cette approche peut être utile lorsque vous disposez d’une liste de locataires autorisés à utiliser des points de terminaison privés.
  • Approbation automatique, où le service Private Link gère lui-même la liste des ID d’abonnement qui doivent avoir leurs connexions automatiquement approuvées.

Pour plus d’informations, consultez Contrôler l’accès au service.

Proxy Protocol v2

Lorsque vous utilisez le service Private Link, votre application a, par défaut, la visibilité d’une seule adresse IP qui a subi une traduction d'adresse réseau (NAT). Ce comportement signifie que le trafic semble circuler à partir de votre propre réseau virtuel.

Private Link vous permet d’accéder à l’adresse IP du client d’origine dans le réseau virtuel du locataire. Cette fonctionnalité utilise TCP Proxy Protocol v2.

Par exemple, supposons que les administrateurs de vos locataires doivent ajouter des restrictions d’accès basées sur des adresses IP, par exemple l’hôte 10.0.0.10 peut accéder au service à la différence de l’hôte 10.0.0.20 qui ne le peut pas. Lorsque vous utilisez Proxy Protocol v2, vous pouvez autoriser vos locataires à configurer ces types de restrictions d’accès dans votre application. Toutefois, votre code d’application doit inspecter l’adresse IP d’origine du client et appliquer les restrictions.

  • Explications et démonstrations relatives au service Azure Private Link du point de vue du fournisseur (ISV SaaS) et des consommateurs : vidéo qui examine la fonctionnalité du service Azure Private Link pour les fournisseurs de services multilocataires (tels que les fournisseurs de logiciels indépendants qui créent des produits SaaS). Cette solution permet aux consommateurs d’accéder au service du fournisseur à l’aide d’adresses IP privées provenant de leurs propres réseaux virtuels Azure.
  • Protocole proxy TCP v2 avec service Azure Private Link - Présentation approfondie : vidéo proposant une présentation approfondie du protocole proxy TCP v2, qui est une fonctionnalité avancée du service Azure Private Link. Il est utile dans les scénarios multilocataires et SaaS. La vidéo vous montre comment activer le protocole proxy v2 dans le service Azure Private Link. Elle vous montre également comment configurer un service NGINX pour lire l’adresse IP privée source du client d’origine, plutôt que l’adresse IP NAT, afin d’accéder au service via le point de terminaison privé.
  • Utilisation de NGINX Plus pour décoder la valeur linkIdentifier TLV du protocole proxy TLV à partir du service Azure Private Link : vidéo qui explique comment utiliser NGINX Plus pour obtenir la valeur TLV du protocole proxy TCP v2 à partir du service Azure Private Link. La vidéo montre comment extraire et décoder la valeur linkIdentifier numérique, également appelée LINKID, de la connexion de point de terminaison privé. Cette solution est utile pour les fournisseurs multilocataires qui doivent identifier le locataire consommateur à partir duquel la connexion a été établie.
  • Modèle de connectivité privée SaaS : exemple de solution qui illustre une approche permettant d’automatiser l’approbation des connexions de point de terminaison privé à l’aide d’Applications managées Azure.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Principaux auteurs :

Autre contributeur :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes

Passez en revue les approches de mise en réseau de la mutualisation.