Autoriser l’accès aux espaces de noms Azure Service Bus via des points de terminaison privés

Le service Azure Private Link vous permet d’accéder aux services Azure (par exemple, Azure Service Bus, le Stockage Azure et Azure Cosmos DB) ainsi qu’aux services de partenaires/clients hébergés par Azure sur un point de terminaison privé de votre réseau virtuel.

Un point de terminaison privé est une interface réseau qui vous permet de vous connecter de façon privée et sécurisée à un service basé sur Azure Private Link. Le point de terminaison privé utilise une adresse IP privée de votre réseau virtuel, plaçant de fait le service dans votre réseau virtuel. Sachant que l’ensemble du trafic à destination du service peut être routé via le point de terminaison privé, il n’y a aucun besoin de passerelles, d’appareils NAT, de connexions ExpressRoute ou VPN ou d’adresses IP publiques. Le trafic entre votre réseau virtuel et le service transite par le réseau principal de Microsoft, éliminant ainsi toute exposition à l’Internet public. Vous pouvez vous connecter à une instance d’une ressource Azure, ce qui vous donne le plus haut niveau de granularité en matière de contrôle d’accès.

Pour plus d’informations, consultez Qu’est-ce qu’Azure Private Link ?

Points importants

  • Cette fonctionnalité est prise en charge avec le niveau Premium d’Azure Service Bus. Pour plus d’informations sur le niveau Premium, consultez l’article Couches de messagerie Service Bus Premium et Standard.

  • L’implémentation de points de terminaison privés peut empêcher d’autres services Azure d’interagir avec Service Bus. En guise d’exception, vous pouvez autoriser l’accès aux ressources Service Bus à partir de certains services approuvés, même lorsque les points de terminaison privés sont activés. Pour obtenir la liste des services approuvés, consultez Services approuvés.

    Les services Microsoft suivants doivent se trouver sur un réseau virtuel

    • Azure App Service
    • Azure Functions
  • Spécifiez au moins une règle d’adresse IP ou une règle de réseau virtuel pour l’espace de noms afin d’autoriser le trafic uniquement à partir des adresses IP ou du sous-réseau d’un réseau virtuel. S’il n’existe aucune règle d’adresse IP et de réseau virtuel, l’espace de noms est accessible via l’Internet public (à l’aide de la clé d’accès).

Ajouter un point de terminaison privé avec le portail Azure

Prérequis

Pour intégrer un espace de noms Service Bus à Azure Private Link, vous avez besoin des entités ou autorisations suivantes :

  • Un espace de noms Service Bus.
  • Un réseau virtuel Azure.
  • Un sous-réseau dans le réseau virtuel. Vous pouvez utiliser le sous-réseau par défaut.
  • Des autorisations de propriétaire ou de contributeur à la fois pour l’espace de noms Service Bus et le réseau virtuel.

Votre point de terminaison privé et votre réseau virtuel doivent se trouver dans la même région. Au moment de sélectionner la région du point de terminaison privé sur le portail, les réseaux virtuels qui se trouvent dans cette région sont filtrés automatiquement. Votre espace de noms Service Bus peut se trouver dans une autre région. Et votre point de terminaison privé utilise une adresse IP privée dans votre réseau virtuel.

Configurer l’accès privé lors de la création d’un espace de noms

Lors de la création d’un espace de noms, vous pouvez autoriser l’accès public uniquement (depuis tous les réseaux) ou privé (uniquement via des points de terminaison privés) à l’espace de noms.

Si vous sélectionnez l’option Accès privé dans la page Mise en réseau de l’Assistant Création d’espace de noms, vous pouvez ajouter un point de terminaison privé sur la page en sélectionnant le bouton + Point de terminaison privé. Consultez la section suivante pour connaître les étapes détaillées de l’ajout d’un point de terminaison privé.

Capture d’écran de la page Mise en réseau de l’Assistant Création d’espaces de nom avec l’option Accès privé sélectionnée.

Configurer l’accès privé pour un espace de noms existant

Si vous avez déjà un espace de noms, vous pouvez créer un point de terminaison privé en suivant ces étapes :

  1. Connectez-vous au portail Azure.

  2. Dans la barre de recherche, saisissez Service Bus.

  3. Dans la liste, sélectionnez l’espace de noms auquel vous voulez ajouter un point de terminaison privé.

  4. Dans le menu de gauche, sélectionnez l’option Réseaux sous Paramètres.

    Notes

    L’onglet Réseau s’affiche uniquement pour les espaces de noms Premium.

  5. Dans la page Mise en réseau, pour Accès au réseau public, sélectionnez Désactivé si vous souhaitez que l’espace de noms soit accessible uniquement via des points de terminaison privés.

  6. Pour Autoriser les services Microsoft approuvés à contourner ce pare-feu, sélectionnez Oui si vous souhaitez autoriser les services Microsoft approuvés à contourner ce pare-feu.

    Capture d’écran de la page Mise en réseau avec l’accès au réseau public désactivé.

  7. Pour autoriser l’accès à l’espace de noms via des points de terminaison privés, sélectionnez l’onglet Connexions des points de terminaison privés en haut de la page

  8. Sélectionnez le bouton + Point de terminaison privé en haut de la page.

    Bouton Ajouter un point de terminaison privé

  9. Dans la page Informations de base, suivez ces étapes :

    1. Sélectionnez l’abonnement Azure où créer le point de terminaison privé.

    2. Sélectionnez le groupe de ressources pour la ressource de point de terminaison privé.

    3. Entrez un nom pour le point de terminaison privé.

    4. Entrez un nom pour l’interface réseau.

    5. Sélectionnez une région pour le point de terminaison privé. La région de votre point de terminaison privé doit être la même que celle de votre réseau virtuel, mais elle peut être différente de celle de la ressource de lien privé à laquelle vous vous connectez.

    6. Sélectionnez le bouton Suivant : Ressource en bas de la page.

      Capture d’écran montrant la page Informations de base dans l’Assistant Créer un point de terminaison privé.

  10. Dans la page Ressource, passez en revue les paramètres, puis sélectionnez Suivant : Réseau virtuel en bas de la page.

    Capture d’écran montrant la page Ressource dans l’Assistant Créer un point de terminaison privé.

  11. Dans la page Réseau virtuel, vous sélectionnez le sous-réseau dans un réseau virtuel sur lequel vous voulez déployer le point de terminaison privé.

    1. Sélectionnez un réseau virtuel. Seuls les réseaux virtuels dans l’abonnement et l’emplacement sélectionnés sont présents dans la liste déroulante.
    2. Sélectionnez un sous-réseau dans le réseau virtuel que vous avez sélectionné.
    3. Remarquez que la stratégie réseau pour les points de terminaison privés est désactivée. Si vous voulez l’activer, sélectionnez modifier, mettez à jour le paramètre et sélectionnez Enregistrer.
    4. Pour Configuration d’adresse IP privée, l’option Allouer dynamiquement l’adresse IP est sélectionnée par défaut. Si vous voulez affecter une adresse IP statique, sélectionnez Allouer statiquement l’adresse IP*.
    5. Pour Groupe de sécurité d’application, sélectionnez un groupe de sécurité d’application existant ou créez-en un à associer au point de terminaison privé.
    6. Sélectionnez le bouton Suivant : DNS> au bas de la page.

    Capture d’écran montrant la page Réseau virtuel de l’Assistant Créer un point de terminaison privé.

  12. Dans la page DNS, indiquez si vous voulez que le point de terminaison privé soit intégré à une zone DNS privée, puis sélectionnez Suivant : Étiquettes.

    Capture d’écran montrant la page DNS dans l’Assistant Créer un point de terminaison privé.

  13. Dans la page Étiquettes, créez les étiquettes (noms et valeurs) à associer à la ressource de point de terminaison privé. Ensuite, sélectionnez le bouton Vérifier + créer en bas de la page.

  14. Dans la page Vérifier + créer, examinez tous les paramètres et sélectionnez Créer pour créer le point de terminaison privé.

    Capture d’écran montrant la page Vérifier + créer dans l’Assistant Créer un point de terminaison privé.

  15. Confirmez que le point de terminaison privé est créé. Si vous êtes le propriétaire de la ressource et que vous avez sélectionné l’option Se connecter à une ressource Azure dans mon répertoire pour la méthode de connexion, la connexion au point de terminaison doit être approuvée automatiquement. Si elle est à l’état En attente, consultez la section Gérer des points de terminaison privés avec le Portail Azure.

    Point de terminaison privé créé

Services Microsoft approuvés

Lorsque vous activez le paramètre Autoriser les services Microsoft approuvés pour contourner ce pare-feu, les services suivants sont autorisés à accéder à vos ressources Service Bus.

Service approuvé Scénarios d’utilisation pris en charge
Azure Event Grid Autorise Azure Event Grid à envoyer des événements vers les files d’attente ou les rubriques dans votre espace de noms Service Bus. Vous devez également procéder comme suit :
  • Activer une identité attribuée par le système pour un sujet ou un domaine
  • Ajouter l’identité au rôle d’expéditeur de données Azure Service Bus sur l’espace de noms Service Bus
  • Ensuite, configurez l’abonnement aux événements qui utilise une file d’attente ou une rubrique Service Bus comme point de terminaison pour utiliser l’identité affectée au système.

Pour plus d’informations, consultez Remise d’événement avec une identité managée

Azure Stream Analytics Permet à un travail Azure Stream Analytics de générer des données dans des files d’attente Service Bus vers des sujets.

Important : Le travail Stream Analytics doit être configuré de manière à utiliser une identité managée pour accéder à l’espace de noms Service Bus. Ajoutez l’identité au rôle Expéditeur de données Azure Service Bus dans l’espace de noms Service Bus.

Azure IoT Hub Permet à un hub IoT d’envoyer des messages à des files d’attente ou à des rubriques dans votre espace de noms Service Bus. Vous devez également procéder comme suit :
Gestion des API Azure

Le service API Management vous permet d'envoyer des messages à une file d'attente/rubrique Service Bus de votre espace de noms Service Bus.

Azure IoT Central

Autorise IoT Central à exporter des données vers des files d’attente ou rubriques Service Bus dans votre espace de noms Service Bus. Vous devez également procéder comme suit :

Azure Digital Twins Permet à Azure Digital Twins de transférer des données vers des sujets Service Bus dans votre espace de noms Service Bus. Vous devez également procéder comme suit :

  • Activez l’identité affectée par le système pour votre instance Azure Digital Twins.
  • Ajoutez l’identité au rôle Expéditeur de données Azure Service Bus dans l’espace de noms Service Bus.
  • Ensuite, configurez un point de terminaison Azure Digital Twins ou une connexion d’historique des données Azure Digital Twins qui utilise l’identité affectée par le système pour l’authentification. Si vous souhaitez en savoir plus sur la configuration des points de terminaison et des itinéraires d’événements vers des ressources Service Bus depuis Azure Digital Twins, veuillez consulter les rubriques Acheminer des événements Azure Digital Twins et Créer des points de terminaison dans Azure Digital Twins.
Azure Monitor (paramètres de diagnostic et groupes d’actions) Permet à Azure Monitor d’envoyer des informations de diagnostic et des notifications d’alerte à Service Bus dans votre espace de noms Service Bus. Azure Monitor peut lire et écrire des données dans l’espace de noms Service Bus.
Azure Synapse Permet à Azure Synapse de se connecter à Service Bus à l’aide de l’identité managée de l’espace de travail Synapse. Ajoutez le rôle Expéditeur, Récepteur ou Propriétaire de données Azure Service Bus à l’identité dans l’espace de noms Service Bus.

Les autres services approuvés d’Azure Service Bus sont disponibles ci-dessous :

  • Explorateur de données Azure
  • Azure Health Data Services
  • Azure Arc
  • Azure Kubernetes
  • Azure Machine Learning
  • Microsoft Purview

Pour autoriser les services approuvés à accéder à votre espace de noms, basculez vers l’onglet Accès Public dans la page Réseau, puis sélectionnez Oui pour Autoriser les services Microsoft approuvés pour contourner ce pare-feu ?.

Ajouter un point de terminaison privé avec PowerShell

L’exemple suivant montre comment utiliser Azure PowerShell pour créer une connexion de point de terminaison privé à un espace de noms Service Bus.

Votre point de terminaison privé et votre réseau virtuel doivent se trouver dans la même région. Votre espace de noms Service Bus peut se trouver dans une autre région. Et votre point de terminaison privé utilise une adresse IP privée dans votre réseau virtuel.


$rgName = "<RESOURCE GROUP NAME>"
$vnetlocation = "<VNET LOCATION>"
$vnetName = "<VIRTUAL NETWORK NAME>"
$subnetName = "<SUBNET NAME>"
$namespaceLocation = "<NAMESPACE LOCATION>"
$namespaceName = "<NAMESPACE NAME>"
$peConnectionName = "<PRIVATE ENDPOINT CONNECTION NAME>"

# create resource group
New-AzResourceGroup -Name $rgName -Location $vnetLocation 

# create virtual network
$virtualNetwork = New-AzVirtualNetwork `
                    -ResourceGroupName $rgName `
                    -Location $vnetlocation `
                    -Name $vnetName `
                    -AddressPrefix 10.0.0.0/16

# create subnet with endpoint network policy disabled
$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
                    -Name $subnetName `
                    -AddressPrefix 10.0.0.0/24 `
                    -PrivateEndpointNetworkPoliciesFlag "Disabled" `
                    -VirtualNetwork $virtualNetwork

# update virtual network
$virtualNetwork | Set-AzVirtualNetwork

# create premium service bus namespace
$namespaceResource = New-AzResource -Location $namespaceLocation -ResourceName $namespaceName -ResourceGroupName $rgName -Sku @{name = "Premium"; capacity = 1} -Properties @{} -ResourceType "Microsoft.ServiceBus/namespaces" -

# create a private link service connection
$privateEndpointConnection = New-AzPrivateLinkServiceConnection `
                                -Name $peConnectionName `
                                -PrivateLinkServiceId $namespaceResource.ResourceId `
                                -GroupId "namespace"

# get subnet object that you will use in the next step                                
$virtualNetwork = Get-AzVirtualNetwork -ResourceGroupName  $rgName -Name $vnetName
$subnet = $virtualNetwork | Select -ExpandProperty subnets `
                                | Where-Object  {$_.Name -eq $subnetName}  
   
# now, create private endpoint   
$privateEndpoint = New-AzPrivateEndpoint -ResourceGroupName $rgName  `
                                -Name $vnetName   `
                                -Location $vnetlocation `
                                -Subnet  $subnet   `
                                -PrivateLinkServiceConnection $privateEndpointConnection

(Get-AzResource -ResourceId $namespaceResource.ResourceId -ExpandProperties).Properties


Gérer des points de terminaison privés avec le portail Azure

Quand vous créez un point de terminaison privé, la connexion doit être approuvée. Si la ressource pour laquelle vous créez un point de terminaison privé se trouve dans votre répertoire, vous pouvez approuver la requête de connexion à condition d’avoir les autorisations nécessaires. Si vous vous connectez à une ressource Azure dans un autre répertoire, vous devez attendre que le propriétaire de cette ressource approuve votre requête de connexion.

Il existe quatre états de provisionnement :

Action de service État du point de terminaison privé de l’utilisateur du service Description
None Pending La connexion est créée manuellement et est en attente d’approbation du propriétaire de la ressource Private Link.
Approbation Approved La connexion a été approuvée automatiquement ou manuellement et est prête à être utilisée.
Rejeter Rejeté La connexion a été rejetée par le propriétaire de la ressource Private Link.
Supprimer Déconnecté La connexion a été supprimée par le propriétaire de la ressource Private Link, le point de terminaison privé devient donc informatif et doit être supprimé dans le cadre d’un nettoyage.

Approuver, rejeter ou supprimer une connexion de point de terminaison privé

  1. Connectez-vous au portail Azure.
  2. Dans la barre de recherche, saisissez Service Bus.
  3. Sélectionnez l’espace de noms que vous voulez gérer.
  4. Sélectionnez l’onglet Réseau.
  5. Consultez la section suivante appropriée en fonction de l'opération que vous souhaitez : approuver, rejeter ou supprimer.

Approuver une connexion de point de terminaison privé

  1. Si une connexion est en attente, celle-ci présente l’état de provisionnement En attente.

  2. Sélectionnez le point de terminaison privé à approuver

  3. Sélectionnez le bouton Approuver.

    Approuver le point de terminaison privé

  4. Dans la page Approuver la connexion, entrez éventuellement un commentaire et sélectionnez Oui. Si vous sélectionnez Non, il ne se passe rien.

    Page Approuver la connexion

  5. Vous devez voir que l’état de la connexion dans la liste est remplacé par Approuvé.

    État de la connexion - approuvé

Rejeter une connexion de point de terminaison privé

  1. Si vous voulez rejeter une connexion de point de terminaison privé, qu’il s’agisse d’une demande en attente ou d’une connexion existante approuvée précédemment, sélectionnez la connexion de point de terminaison, puis le bouton Rejeter.

    Bouton Rejeter

  2. Dans la page Rejeter la connexion, entrez éventuellement un commentaire et sélectionnez Oui. Si vous sélectionnez Non, il ne se passe rien.

    Page Rejeter la connexion

  3. Vous devez voir que l’état de la connexion dans la liste est remplacé par Rejeté.

    Point de terminaison rejeté

Supprimer une connexion de point de terminaison privé

  1. Pour supprimer une connexion de point de terminaison privé, sélectionnez-la dans la liste et sélectionnez Supprimer dans la barre d’outils.

    Bouton Supprimer

  2. Dans la page Supprimer la connexion, sélectionnez Oui pour confirmer la suppression du point de terminaison privé. Si vous sélectionnez Non, il ne se passe rien.

    Page Supprimer la connexion

  3. Vous devez voir que l’état a été remplacé par Déconnecté. Le point de terminaison disparaît alors de la liste.

Vous devez vérifier que les ressources contenues dans le réseau virtuel du point de terminaison privé se connectent à votre espace de noms Service Bus via une adresse IP privée, et qu’elles sont intégrées à la zone DNS privée appropriée.

Commencez par créer une machine virtuelle en suivant les étapes décrites dans Créer une machine virtuelle Windows sur le portail Azure.

Sous l’onglet Réseau :

  1. Spécifiez un réseau virtuel et un sous-réseau. Vous devez sélectionner le réseau virtuel sur lequel vous avez déployé le point de terminaison privé.
  2. Spécifiez une ressource d’adresse IP publique.
  3. Pour Groupe de sécurité réseau de la carte réseau, sélectionnez Aucun.
  4. Pour Équilibrage de charge, sélectionnez Non.

Connectez-vous à la machine virtuelle, ouvrez la ligne de commande et exécutez la commande suivante :

nslookup <service-bus-namespace-name>.servicebus.windows.net

Vous devez obtenir un résultat similaire à la sortie suivante.

Non-authoritative answer:
Name:    <service-bus-namespace-name>.privatelink.servicebus.windows.net
Address:  10.0.0.4 (private IP address associated with the private endpoint)
Aliases:  <service-bus-namespace-name>.servicebus.windows.net

Limitations et remarques sur la conception

  • Pour plus d’informations sur les prix, consultez Prix d’Azure Private Link.
  • Cette fonctionnalité est disponible dans toutes les régions publiques Azure.
  • Nombre maximal de points de terminaison privés par espace de noms Service Bus : 120.
  • Le trafic est bloqué au niveau de la couche application, pas au niveau de la couche TCP. Par conséquent, vous voyez des connexions ou des opérations nslookup TCP réussir sur le point de terminaison public même si l’accès public est désactivé.

Pour plus d’informations, consultez Service Azure Private Link : Limitations

Étapes suivantes