Share via


Schützen von ausgehendem Azure SignalR-Datenverkehr über freigegebene private Endpunkte

Wenn Sie den serverlosen Modus in Azure SignalR Service verwenden, können Sie ausgehende private Endpunktverbindungen mit einem Upstreamdienst erstellen.

Upstreamdienste, z. B. Azure-Web-App und Azure Functions, lassen sich so konfigurieren, dass Verbindungen aus einer Liste virtueller Netzwerke akzeptiert und externe Verbindungen abgelehnt werden, die aus einem öffentlichen Netzwerk stammen. Zum Erreichen dieser Endpunkte können Sie eine ausgehende private Endpunktverbindung erstellen.

Diagram showing architecture of shared private endpoint.

Für diese ausgehende Methode gelten die folgenden Anforderungen:

In diesem Artikel erfahren Sie, wie Sie einen freigegebenen privaten Endpunkt mit einer ausgehenden privaten Endpunktverbindung erstellen, um ausgehenden Datenverkehr zu einer Upstreaminstanz von Azure Function zu schützen.

Sie erstellen private Endpunkte gesicherter Ressourcen mithilfe der SignalR Service-APIs. Diese Endpunkte, die als freigegebene Private Link-Ressourcen bezeichnet werden, geben Ihnen die Möglichkeit, den Zugriff auf eine Ressource freizugeben, z. B. auf eine Azure-Funktion, die in den Azure Private Link-Dienst integriert ist. Diese privaten Endpunkte werden innerhalb der Ausführungsumgebung von SignalR Service erstellt und sind außerhalb dieser Umgebung nicht zugänglich.

Voraussetzungen

Sie benötigen die folgenden Ressourcen, um die Schritte in diesem Artikel auszuführen:

  • Eine Azure-Ressourcengruppe

  • Eine Azure SignalR Service-Instanz (darf nicht im Free-Tarif betrieben werden)

  • Eine Azure Function-Instanz

  • Hinweis

Die Beispiele in diesem Artikel basieren auf den folgenden Annahmen:

  • Die Ressourcen-ID des SignalR-Diensts ist /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.SignalRService/signalr/contoso-signalr.
  • Die Ressourcen-ID dieser Upstream-Azure-Funktion ist /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Web/sites/contoso-func. In den restlichen Beispielen wird gezeigt, wie der Dienst contoso-signalr so konfiguriert werden kann, dass seine Upstreamaufrufe an die Funktion über einen privaten Endpunkt statt über ein öffentliches Netzwerk übertragen werden. Sie können in den Beispielen Ihre eigenen Ressourcen-IDs verwenden.
  1. Wechseln Sie im Azure-Portal zu Ihrer SignalR Service-Ressource.

  2. Wählen Sie im linken Menü Netzwerk aus.

  3. Wählen Sie die Registerkarte Privater Zugriff aus.

  4. Wählen Sie im Abschnitt Freigegebene private Endpunkte die Option Freigegebenen privaten Endpunkt hinzufügen aus.

    Screenshot of shared private endpoints management.

    Geben Sie die folgenden Informationen ein: | Feld | Beschreibung | | ----- | ----------- | | Name | Der Name des freigegebenen privaten Endpunkts. | | Typ | Wählen Sie Microsoft.Web/sites aus | | Abonnement | Das Abonnement, das Ihre Funktions-App enthält. | | Ressourcen | Geben Sie den Namen Ihrer Funktions-App ein. | | Anforderungsnachricht | Geben Sie „Bitte genehmigen“ ein |

  5. Klicken Sie auf Hinzufügen.

    Screenshot of adding a shared private endpoint.

Die Ressource für den freigegebenen privaten Endpunkt hat den Bereitstellungsstatus Erfolgreich. Der Verbindungsstatus lautet Ausstehend und muss auf der Zielressourcenseite noch genehmigt werden.

Screenshot of an added shared private endpoint.

Genehmigen der privaten Endpunktverbindung für die Funktion

Wichtig

Nachdem Sie die private Endpunktverbindung genehmigt haben, ist ein Zugriff auf die Funktion über das öffentliche Netzwerk nicht mehr möglich. Möglicherweise müssen Sie weitere private Endpunkte in Ihrem virtuellen Netzwerk erstellen, um auf den Funktionsendpunkt zuzugreifen.

  1. Wechseln Sie im Azure-Portal zur Ihrer Funktions-App.

  2. Wählen Sie im linken Menü die Option Netzwerk aus.

  3. Wählen Sie Private Endpunktverbindungen aus.

  4. Wählen Sie unter Eingehender DatenverkehrPrivate Endpunkte aus.

  5. Wählen Sie den Verbindungsnamen der Verbindung mit dem privaten Endpunkt aus.

  6. Wählen Sie Genehmigen aus.

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

    Vergewissern Sie sich, dass die private Endpunktverbindung wie im folgenden Screenshot angezeigt wird. Es kann ein paar Minuten dauern, bis der Status aktualisiert wird.

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

Die Weitergabe der Genehmigung an den SignalR Service dauert einige Minuten. Sie können den Status mithilfe des Azure-Portals oder der Azure CLI überprüfen.

Screenshot of an approved shared private endpoint.

An diesem Punkt ist der private Endpunkt zwischen dem SignalR Service und der Azure-Funktion eingerichtet.

Überprüfen, ob Upstreamaufrufe von einer privaten IP-Adresse stammen

Nachdem der private Endpunkt eingerichtet wurde, können Sie überprüfen, ob eingehende Aufrufe von einer privaten IP-Adresse stammen, indem Sie den X-Forwarded-For-Header auf der Upstreamseite überprüfen.

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

Bereinigung

Wenn Sie nicht vorhaben, die in diesem Artikel erstellten Ressourcen zu verwenden, können Sie die Ressourcengruppe löschen.

Achtung

Beim Löschen der Ressourcengruppe werden alle darin enthaltenen Ressourcen gelöscht. Falls in der angegebenen Ressourcengruppe Ressourcen enthalten sind, die nicht zum Umfang dieses Artikels gehören, werden sie ebenfalls gelöscht.

Nächste Schritte

Weitere Informationen zu privaten Endpunkten: