Qu’est-ce que le service Azure Private Link ?What is Azure Private Link service?

Le service Azure Private Link est la référence à votre propre service Azure Private Link.Azure Private Link service is the reference to your own service that is powered by Azure Private Link. L’accès Private Link peut être activé pour un service qui s’exécute derrière Azure Standard Load Balancer. De cette façon, les utilisateurs du service pourront y accéder à l’aide d’une connexion privée, à partir de leurs propres réseaux virtuels.Your service that is running behind Azure Standard Load Balancer can be enabled for Private Link access so that consumers to your service can access it privately from their own VNets. Vos clients peuvent créer un point de terminaison privé dans leur réseau virtuel et le mapper dans ce service.Your customers can create a private endpoint inside their VNet and map it to this service. Cet article explique les concepts qui sont utilisés côté fournisseur de services.This article explains concepts related to the service provider side.

Workflow du service Private Link

Figure : Service Azure Private Link.Figure: Azure Private Link Service.

WorkflowWorkflow

Workflow du service Private Link

Figure : Workflow du service Azure Private Link.Figure: Azure Private Link service workflow.

  • Configurez votre application pour qu’elle s’exécute derrière un équilibreur de charge standard dans votre réseau virtuel.Configure your application to run behind a standard load balancer in your virtual network. Si votre application est déjà configurée pour s’exécuter derrière un équilibreur de charge standard, vous pouvez ignorer cette étape.If you already have your application configured behind a standard load balancer, you can skip this step.

  • Créez un service Private Link référençant l’équilibreur de charge ci-dessus.Create a Private Link Service referencing the load balancer above. Durant le processus de sélection de l’équilibrage de charge, choisissez la configuration d’adresse IP front-end où vous souhaitez recevoir le trafic.In the load balancer selection process, choose the frontend IP configuration where you want to receive the traffic. Choisissez un sous-réseau pour les adresses IP NAT du service Private Link.Choose a subnet for NAT IP addresses for the Private Link Service. Il est recommandé de disposer d’au moins 8 adresses IP NAT disponibles dans le sous-réseau.It is recommended to have at least eight NAT IP addresses available in the subnet. Pour le fournisseur de services, tout le trafic des utilisateurs semble provenir de ce pool d’adresses IP privées.All consumer traffic will appear to originate from this pool of private IP addresses to the service provider. Choisissez les propriétés et les paramètres nécessaires pour le service Private Link.Choose the appropriate properties/settings for the Private Link Service.

    Notes

    Le service Azure Private Link est uniquement pris en charge sur Standard Load Balancer.Azure Private Link Service is only supported on Standard Load Balancer.

Partager un serviceShare your service

Une fois que vous avez créé un service Private Link, Azure génère un moniker global unique appelé « alias », basé sur le nom que vous avez fourni pour votre service.After you create a Private Link service, Azure will generate a globally unique named moniker called "alias" based on the name you provide for your service. Vous pouvez partager l’alias ou l’URI de ressource de votre service avec vos clients hors connexion.You can share either the alias or resource URI of your service with your customers offline. Les utilisateurs peuvent démarrer une connexion Private Link à l’aide de l’alias ou de l’URI de ressource.Consumers can start a Private Link connection using the alias or the resource URI.

Gérer les demandes de connexionManage your connection requests

Lorsque l’utilisateur démarre une connexion, le fournisseur de services peut accepter ou rejeter la demande de connexion.After a consumer initiates a connection, the service provider can accept or reject the connection request. Toutes les demandes de connexion sont listées sous la propriété privateendpointconnections dans le service Private Link.All connection requests will be listed under the privateendpointconnections property on the Private Link service.

Supprimer le serviceDelete your service

Si le service Private Link n’est plus utilisé, vous pouvez le supprimer.If the Private Link service is no longer in use, you can delete it. Toutefois, avant de le supprimer, vérifiez qu’il n’est associé à aucune connexion de point de terminaison privé.However, before your delete the service, ensure that there are no private endpoint connections associated with it. Vous pouvez rejeter toutes les connexions et supprimer le service.You can reject all connections and delete the service.

PropriétésProperties

Le service Private Link spécifie les propriétés suivantes :A Private Link service specifies the following properties:

PropriétéProperty ExplicationExplanation
État de provisionnement (provisioningState)Provisioning State (provisioningState) Propriété en lecture seule qui liste l’état de provisionnement actuel du service Private Link.A read-only property that lists the current provisioning state for Private Link service. Les états de provisionnement applicables sont les suivants : « Deleting; Failed; Succeeded; Updating » (Suppression, Échec, Réussite, Mise à jour).Applicable provisioning states are: "Deleting; Failed; Succeeded; Updating". Lorsque l’état de provisionnement est « Succeeded », cela signifie que votre service Private Link a bien été provisionné.When the provisioning state is "Succeeded", you have successfully provisioned your Private Link service.
Alias (alias)Alias (alias) L’alias est une chaîne globale unique en lecture seule qui représente votre service.Alias is a globally unique read-only string for your service. Il vous permet de masquer les données client de votre service, et de créer un nom facile à partager pour votre service.It helps you mask the customer data for your service and at the same time creates an easy-to-share name for your service. Lorsque vous créez un service Private Link, Azure génère un alias pour ce service, que vous pouvez ensuite partager avec vos clients.When you create a Private Link service, Azure generates the alias for your service that you can share with your customers. Vos clients peuvent utiliser cet alias pour demander une connexion à votre service.Your customers can use this alias to request a connection to your service.
Visibilité (visibility)Visibility (visibility) La propriété visibility permet de contrôler les paramètres d’exposition de votre service Private Link.Visibility is the property that controls the exposure settings for your Private Link service. Les fournisseurs de services peuvent choisir d’exposer leurs services aux abonnements disposant d’autorisations de contrôle d’accès en fonction du rôle Azure (RBAC Azure) uniquement, à un groupe restreint d’abonnements ou à tous les abonnements Azure.Service providers can choose to limit the exposure to their service to subscriptions with Azure role-based access control (Azure RBAC) permissions, a restricted set of subscriptions, or all Azure subscriptions.
Approbation automatique (autoApproval)Auto Approval (autoApproval) L’approbation automatique permet de contrôler l’accès automatisé au service Private Link.Auto-approval controls the automated access to the Private Link service. Les abonnements qui figurent dans la liste d’approbation automatique sont approuvés automatiquement lorsqu’une connexion est demandée à partir des points de terminaison privés de ces abonnements.The subscriptions specified in the auto-approval list are approved automatically when a connection is requested from private endpoints in those subscriptions.
Configuration de l’adresse IP front-end de l’équilibreur de charge (loadBalancerFrontendIpConfigurations)Load Balancer Frontend IP Configuration (loadBalancerFrontendIpConfigurations) Le service Private Link est associé à l’adresse IP front-end d’un équilibreur de charge standard.Private Link service is tied to the frontend IP address of a Standard Load Balancer. Tout le trafic destiné au service atteindra le front-end de l’équilibreur de charge standard.All traffic destined for the service will reach the frontend of the SLB. Vous pouvez configurer des règles d’équilibreur de charge standard pour diriger ce trafic vers les pools back-end où sont exécutées vos applications.You can configure SLB rules to direct this traffic to appropriate backend pools where your applications are running. Les adresses IP front-end d’équilibreur de charge sont différentes des adresses IP NAT.Load balancer frontend IP configurations are different than NAT IP configurations.
Configuration d’adresse IP NAT (ipConfigurations)NAT IP Configuration (ipConfigurations) Cette propriété concerne la configuration de l’adresse IP NAT (traduction d’adresses réseau) du service Private Link.This property refers to the NAT (Network Address Translation) IP configuration for the Private Link service. L’adresse IP NAT peut être choisie à partir de n’importe quel sous-réseau du réseau virtuel d’un fournisseur de services.The NAT IP can be chosen from any subnet in a service provider's virtual network. Le service Private Link effectue la traduction d’adresses réseau (NAT) côté destination pour le trafic Private Link.Private Link service performs destination side NAT-ing on the Private Link traffic. Cela évite tout conflit d’adresses IP entre l’espace d’adressage source (côté client) et l’espace d’adressage de destination (fournisseur de services).This ensures that there is no IP conflict between source (consumer side) and destination (service provider) address space. Côté destination (fournisseur de services), l’adresse IP NAT s’affichera en tant qu’adresse IP source pour tous les paquets reçus par votre service, et en tant qu’adresse IP de destination pour tous les paquets envoyés par votre service.On the destination side (service provider side), the NAT IP address will show up as Source IP for all packets received by your service and destination IP for all packets sent by your service.
Connexions de points de terminaison privés (privateEndpointConnections)Private endpoint connections (privateEndpointConnections) Cette propriété liste les points de terminaison privés qui se connectent au service Private Link.This property lists the private endpoints connecting to Private Link service. Plusieurs points de terminaison privés peuvent se connecter au même service Private Link, et le fournisseur de services peut contrôler l’état de chaque point de terminaison privé.Multiple private endpoints can connect to the same Private Link service and the service provider can control the state for individual private endpoints.
Proxy TCP v2 (EnableProxyProtocol)TCP Proxy V2 (EnableProxyProtocol) Cette propriété permet au fournisseur de services d’utiliser le proxy TCP v2 pour récupérer les informations de connexion relatives au consommateur de services.This property lets the service provider use tcp proxy v2 to retrieve connection information about the service consumer. Il appartient au fournisseur de services de définir les configurations du récepteur afin de pouvoir analyser l’en-tête du protocole de proxy v2.Service Provider is responsible for setting up receiver configs to be able to parse the proxy protocol v2 header.

DétailsDetails

  • Le service Private Link est accessible à partir des points de terminaison privés approuvés qui sont situés dans une région publique quelconque.Private Link service can be accessed from approved private endpoints in any public region. Vous pouvez accéder à un point de terminaison privé à partir du réseau virtuel auquel il appartient, à partir de réseaux virtuels appairés au niveau régional, de réseaux virtuels appairés au niveau mondial, ainsi que localement, à l’aide de connexions privées VPN ou ExpressRoute.The private endpoint can be reached from the same virtual network, regionally peered VNets, globally peered VNets and on premises using private VPN or ExpressRoute connections.

  • Lors de la création d’un service Private Link, une interface réseau est créée pour le cycle de vie de la ressource.When creating a Private Link Service, a network interface is created for the lifecycle of the resource. Cette interface ne peut pas être gérée par le client.This interface is not manageable by the customer.

  • Le service Private Link doit être déployé dans la même région que le réseau virtuel et Standard Load Balancer.The Private Link Service must be deployed in the same region as the virtual network and the Standard Load Balancer.

  • Plusieurs points de terminaison privés appartenant à différents réseaux virtuels, abonnements et/ou locataires Active Directory peuvent accéder à un service Private Link.A single Private Link Service can be accessed from multiple Private Endpoints belonging to different VNets, subscriptions and/or Active Directory tenants. La connexion est établie via un workflow de connexion.The connection is established through a connection workflow.

  • Vous pouvez créer plusieurs services Private Link sur une même instance de Standard Load Balancer à l’aide de différentes configurations d’adresses IP front-end.Multiple Private Link services can be created on the same Standard Load Balancer using different front-end IP configurations. Le nombre de services Private Link qu’il est possible de créer dans chaque instance Standard Load Balancer et dans chaque abonnement est limité.There are limits to the number of Private Link services you can create per Standard Load Balancer and per subscription. Pour plus d’informations, consultez  Limites Azure.For details, see Azure limits.

  • Le service Private Link peut être associé à plusieurs configurations d’adresses IP NAT.Private Link service can have more than one NAT IP configurations linked to it. Le fait de choisir plusieurs configurations d’adresses IP NAT peut permettre aux fournisseurs de services d’effectuer une mise à l’échelle.Choosing more than one NAT IP configurations can help service providers to scale. Aujourd’hui, les fournisseurs de services peuvent attribuer jusqu’à 8 adresses IP NAT à chaque service Private Link.Today, service providers can assign up to eight NAT IP addresses per Private Link service. Avec chaque adresse IP NAT, vous pouvez affecter davantage de ports pour vos connexions TCP et, donc, effectuer un scale-out. Une fois que vous avez ajouté des adresses IP NAT à un service Private Link, vous ne pouvez pas supprimer ces adresses.With each NAT IP address, you can assign more ports for your TCP connections and thus scale out. After you add multiple NAT IP addresses to a Private Link service, you can't delete the NAT IP addresses. Ceci a été fait dans le but d’empêcher que les connexions actives ne soient pas impactées par la suppression d’adresses IP NAT.This is done to ensure that active connections are not impacted while deleting the NAT IP addresses.

AliasAlias

Un alias est un nom global unique correspondant à votre service.Alias is a globally unique name for your service. Il vous permet de masquer les données client de votre service, et de créer un nom facile à partager pour votre service.It helps you mask the customer data for your service and at the same time creates an easy-to-share name for your service. Lorsque vous créez un service Private Link, Azure génère un alias pour ce service, que vous pouvez ensuite partager avec vos clients.When you create a Private Link service, Azure generates an alias for your service that you can share with your customers. Vos clients peuvent utiliser cet alias pour demander une connexion à votre service.Your customers can use this alias to request a connection to your service.

L’alias se compose de trois parties : Préfixe.GUID.SuffixeThe alias is composed of three parts: Prefix.GUID.Suffix

  • Le préfixe correspond au nom du service.Prefix is the service name. Vous pouvez choisir votre propre préfixe.You can pick you own prefix. Une fois l’alias créé, vous ne pouvez pas le modifier. Vous devez donc bien réfléchir au choix de votre préfixe.After "Alias" is created, you can't change it, so select your prefix appropriately.
  • Le GUID sera fourni par la plateforme.GUID will be provided by platform. Cela permet d’obtenir plus facilement un nom global unique.This helps make the name globally unique.
  • Le suffixe est ajouté par Azure : région.azure.privatelinkserviceSuffix is appended by Azure: region.azure.privatelinkservice

Alias complet : Préfixe.Complete alias: Prefix. {GUID}.région.azure.privatelinkservice{GUID}.region.azure.privatelinkservice

Contrôler l’exposition du serviceControl service exposure

Le service Private Link fournit des options pour contrôler l’exposition de votre service par le biais du paramètre « Visibility ».Private Link service provides you options to control the exposure of your service through "Visibility" setting. Vous pouvez rendre le service privé pour qu’il ne soit utilisé qu’à partir de différents réseaux virtuels dont vous êtes propriétaire (autorisations Azure RBAC uniquement), restreindre l’exposition à un groupe limité d’abonnements que vous approuvez ou le rendre public afin que tous les abonnements Azure puissent demander à se connecter au service Private Link.You can make the service private for consumption from different VNets you own (Azure RBAC permissions only), restrict the exposure to a limited set of subscriptions that you trust, or make it public so that all Azure subscriptions can request connections on the Private Link service. Les paramètres de visibilité déterminent si un utilisateur peut se connecter à votre service.Your visibility settings decide whether a consumer can connect to your service or not.

Contrôler l’accès au serviceControl service access

Les utilisateurs qui ont accès à votre service Private Link (par le biais du paramètre de visibilité) peuvent créer un point de terminaison privé dans leurs réseaux virtuels et demander à se connecter à votre service Private Link.Consumers having exposure (controlled by visibility setting) to your Private Link service can create a private endpoint in their VNets and request a connection to your Private Link service. La connexion de point de terminaison privé sera créée à l’état « Pending » (En attente) dans l’objet du service Private Link.The private endpoint connection will be created in a "Pending" state on the Private Link service object. Le fournisseur de services est chargé d’approuver, rejeter ou supprimer la demande de connexion.The service provider is responsible for acting on the connection request. Vous pouvez approuver, rejeter ou supprimer la connexion.You can either approve the connection, reject the connection, or delete the connection. Seules les connexions approuvées peuvent envoyer du trafic vers le service Private Link.Only connections that are approved can send traffic to the Private Link service.

L’approbation des connexions peut être automatisée à l’aide de la propriété d’approbation automatique du service Private Link.The action of approving the connections can be automated by using the auto-approval property on the Private Link service. L’approbation automatique permet aux fournisseurs de services de préapprouver un groupe d’abonnements pour leur permettre d’accéder automatiquement à leur service.Auto-Approval is an ability for service providers to preapprove a set of subscriptions for automated access to their service. Les clients devront partager leurs abonnements hors connexion pour que les fournisseurs de services puissent les ajouter à la liste d’approbation automatique.Customers will need to share their subscriptions offline for service providers to add to the auto-approval list. L’approbation automatique est un sous-ensemble du tableau de visibilité.Auto-approval is a subset of the visibility array. La propriété de visibilité permet de contrôler l’exposition de votre service, tandis que la propriété d’approbation automatique permet de contrôler les paramètres d’approbation de votre service.Visibility controls the exposure settings whereas auto-approval controls the approval settings for your service. Si un client demande à se connecter à partir d’un abonnement figurant dans la liste d’approbation automatique, la connexion est automatiquement approuvée puis établie.If a customer requests a connection from a subscription in the auto-approval list, the connection is automatically approved and the connection is established. Les fournisseurs de services n’ont plus besoin d’approuver manuellement les demandes.Service providers don’t need to manually approve the request anymore. En revanche, si un client demande à se connecter à partir d’un abonnement du tableau de visibilité et non du tableau d’approbation automatique, la demande sera reçue par le fournisseur de services, et celui-ci devra approuver manuellement les connexions.On the other hand, if a customer requests a connection from a subscription in the visibility array and not in the auto-approval array, the request will reach the service provider but the service provider has to manually approve the connections.

Obtention d’informations de connexion à l’aide du proxy TCP v2Getting connection Information using TCP Proxy v2

Lors de l’utilisation du service de liaison privée, l’adresse IP source des paquets provenant du point de terminaison privé est traduite en adresse réseau (NAT) côté fournisseur de services à l’aide de l’adresse IP NAT allouée à partir du réseau virtuel du fournisseur.When using private link service, the source IP address of the packets coming from private endpoint is network address translated (NAT) on the service provider side using the NAT IP allocated from provider's virtual network. Ainsi, les applications reçoivent l’adresse IP NAT allouée au lieu de l’adresse IP source réelle des consommateurs de services.Hence the applications receive the allocated NAT IP address instead of actual source IP address of the service consumers. Si votre application a besoin d’une adresse IP source réelle du côté du consommateur, vous pouvez activer le protocole proxy sur votre service et récupérer les informations de l’en-tête du protocole proxy.If your application needs actual source IP address from consumer side, you can enable Proxy protocol on your service and retrieve the information from the proxy protocol header. En plus de l’adresse IP source, l’en-tête du protocole proxy comporte l’ID de lien du point de terminaison privé.In addition to source IP address, proxy protocol header also carries the LinkID of the private endpoint. La combinaison de l’adresse IP source et de l’ID de lien peut aider les fournisseurs de services à identifier leurs consommateurs de manière unique.Combination of source IP address and LinkID can help service providers uniquely identify their consumers. Pour plus d’informations sur le protocole de proxy, voir ici.For more information on Proxy Protocol, visit here.

Ces informations sont encodées à l’aide d’un vecteur TLV (Type-Length-Value) personnalisé comme suit :This information is encoded using a custom Type-Length-Value (TLV) vector as follows:

Détails TLV personnalisés :Custom TLV details:

ChampField Longueur (octets)Length (Octets) DescriptionDescription
TypeType 11 PP2_TYPE_AZURE (0xEE)PP2_TYPE_AZURE (0xEE)
LongueurLength 22 Longueur de la valeurLength of value
ValeurValue 11 PP2_SUBTYPE_AZURE_PRIVATEENDPOINT_LINKID (0x01)PP2_SUBTYPE_AZURE_PRIVATEENDPOINT_LINKID (0x01)
44 UINT32 (4 octets) représentant l’ID de lien du point de terminaison privé.UINT32 (4 bytes) representing the LINKID of the private endpoint. Encodé au format Little Endian.Encoded in little endian format.

Notes

Le fournisseur de service est chargé de s’assurer que le service situé derrière l’équilibreur de charge standard est configuré pour analyser l’en-tête du protocole de proxy conformément à la spécification lorsque le protocole est activé sur un service de liaison privée.Service provider is responsible for making sure that the service behind the standard load balancer is configured to parse the proxy protocol header as per the specification when proxy protocol is enabled on private link service. La demande échoue si le paramètre de protocole de proxy est activé sur un service de liaison privée, mais que le service du fournisseur de services n’est pas configuré pour analyser l’en-tête.The request will fail if proxy protocol setting is enabled on private link service but service provider's service is not configured to parse the header. De même, la demande échoue si le service du fournisseur de services attend un en-tête de protocole de proxy alors que le paramètre n’est pas activé sur le service de liaison privée.Similarly, the request will fail if the service provider's service is expecting a proxy protocol header while the setting is not enabled on the private link service. Une fois le paramètre de protocole de proxy activé, l’en-tête de protocole de proxy est également inclus dans les sondes d’intégrité HTTP/TCP de l’hôte vers les machines virtuelles principales, même s’il n’y a pas d’informations sur le client dans l’en-tête.Once proxy protocol setting is enabled, proxy protocol header will also be included in HTTP/TCP health probes from host to the backend virtual machines, even though there will be no client information in the header.

LimitesLimitations

Voici les limitations connues lors de l’utilisation du service Private Link :The following are the known limitations when using the Private Link service:

  • Il est pris en charge uniquement avec Standard Load Balancer.Supported only on Standard Load Balancer
  • Il prend en charge uniquement le trafic IPv4.Supports IPv4 traffic only
  • Il prend en charge uniquement le trafic TCP et le trafic UDP.Supports TCP and UDP traffic only

Étapes suivantesNext steps