Partager via


Sécuriser le trafic sortant Azure SignalR via des points de terminaison privés partagés

Lorsque vous utilisez le mode serverless dans Azure SignalR Service, vous avez la possibilité de créer des connexions de point de terminaison privé sortantes vers un service en amont.

Des services en amont, comme Azure Web Apps et Azure Functions, peuvent être configurés pour accepter les connexions provenant des réseaux virtuels autorisés et pour refuser les connexions externes à partir d’un réseau public. Pour permettre l’accès à ces points de terminaison, vous pouvez créer une connexion de point de terminaison privé sortante.

Diagram showing architecture of shared private endpoint.

Cette méthode sortante est soumise aux exigences suivantes :

Dans cet article, vous allez voir comment créer un point de terminaison privé partagé avec une connexion de point de terminaison privé sortante dans le but de sécuriser le trafic sortant vers une instance Azure Functions en amont.

Vous créez des points de terminaison privés de ressources sécurisées en utilisant les API de SignalR Service. Ces points de terminaison, appelés ressources de liaison privée partagée, vous permettent de partager l’accès à une ressource, telle qu’une fonction Azure intégrée au service Azure Private Link. Ces points de terminaison privés sont créés dans l’environnement d’exécution de SignalR Service et ne sont pas accessibles en dehors de cet environnement.

Prérequis

Pour effectuer les étapes décrites dans cet article, vous avez besoin des ressources suivantes :

  • Un groupe de ressources Azure

  • Une instance Azure SignalR Service (qui ne doit pas être dans le niveau Gratuit)

  • Une instance Azure Functions

  • Remarque

Les exemples de cet article se basent sur les hypothèses suivantes :

  • L’ID de ressource de l’instance SignalR Service est /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.SignalRService/signalr/contoso-signalr.
  • L’ID de ressource de la fonction Azure en amont est /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Web/sites/contoso-func. Les autres exemples montrent la façon dont le service contoso-signalr peut être configuré de manière à ce que ses appels en amont à l’application de fonction passent par un point de terminaison privé plutôt que par le réseau public. Vous pouvez utiliser les ID de vos propres ressources dans les exemples.
  1. Dans le portail Azure, accédez à votre ressource SignalR Service.

  2. Dans le menu de gauche, sélectionnez Mise en réseau.

  3. Sélectionnez l’onglet Accès privé.

  4. Sélectionnez Ajouter un point de terminaison privé partagé dans la section Points de terminaison privés partagés.

    Screenshot of shared private endpoints management.

    Entrez les informations suivantes : | Field | Description | | ----- | ----------- | | Name | Nom du point de terminaison privé partagé. | | Type | Sélectionnez Microsoft.Web/sites | | Subscription | Abonnement contenant votre application de fonction. | | Resource | Entrez le nom de votre application de fonction. | | Request Message | Entrez « veuillez approuver la connexion » |

  5. Sélectionnez Ajouter.

    Screenshot of adding a shared private endpoint.

La ressource de point de terminaison privé partagé sera dans un état d’approvisionnement Réussi. L’état de la connexion est En attente d’approbation du côté cible de la ressource.

Screenshot of an added shared private endpoint.

Approuver la connexion de point de terminaison privé pour l’application de fonction

Important

Une fois que vous avez approuvé la connexion de point de terminaison privé, l’application de fonction n’est plus accessible à partir d’un réseau public. Vous devrez peut-être créer d’autres points de terminaison privés dans votre réseau virtuel pour accéder au point de terminaison de l’application de fonction.

  1. Dans le portail Azure, accédez à votre application de fonction.

  2. Sélectionnez Mise en réseau dans le menu de gauche.

  3. Sélectionnez Connexions des points de terminaison privés.

  4. Sélectionnez Points de terminaison privés dans Trafic entrant.

  5. Sélectionnez le nom de connexion de la connexion de point de terminaison privé.

  6. Sélectionnez Approuver.

    Screenshot of the Azure portal, showing the Private endpoint connections pane.

    Assurez-vous que la connexion de points de terminaison privés s’affiche comme indiqué dans la capture d’écran suivante. Quelques minutes peuvent être nécessaires avant que l’état soit mis à jour.

    Screenshot of the Azure portal, showing an Approved status on the Private endpoint connections pane.

L’approbation met plusieurs minutes à se propager vers SignalR Service. Vous pouvez vérifier l’état dans le portail Azure ou avec Azure CLI.

Screenshot of an approved shared private endpoint.

À ce stade, le point de terminaison privé entre SignalR Service et Azure Function est établi.

Vérifier que les appels en amont proviennent d’une adresse IP privée

Une fois que le point de terminaison privé est créé, vous pouvez vérifier que les appels entrants proviennent bien d’une IP privée en vérifiant l’en-tête X-Forwarded-For côté amont.

Screenshot of the Azure portal, showing incoming requests are from a private IP.

Nettoyage

Si vous n’envisagez pas de réutiliser les ressources que vous avez créées dans cet article, vous pouvez supprimer le groupe de ressources.

Attention

La suppression du groupe de ressources supprime toutes les ressources contenues dans ce groupe. Si des ressources en dehors du cadre de cet article existent dans le groupe de ressources spécifié, elles seront également supprimées.

Étapes suivantes

En savoir plus sur les points de terminaison privés :