Azure Private Link für Azure SQL Managed Instance

Gilt für:Azure SQL Managed Instance

Dieser Artikel bietet eine Übersicht über den privaten Endpunkt für Azure SQL Managed Instance sowie die Schritte zum Konfigurieren. Private Endpunkte stellen eine sichere, isolierte Konnektivität zwischen einem Dienst und mehreren virtuellen Netzwerken her, ohne die gesamte Netzwerkinfrastruktur Ihres Diensts verfügbar zu machen.

Übersicht

Private Link ist die Azure-Technologie, die Azure SQL Managed Instance in einem virtuellen Netzwerk Ihrer Wahl verfügbar macht. Netzwerkadministrator*innen können in ihrem virtuellen Netzwerk einen privaten Endpunkt für Azure SQL Managed Instance einrichten, während SQL-Administrator*innen den Endpunkt akzeptieren oder ablehnen, bevor er aktiv wird. Private Endpunkte stellen eine sichere, isolierte Konnektivität zwischen einem Dienst und mehreren virtuellen Netzwerken her, ohne die gesamte Netzwerkinfrastruktur Ihres Diensts verfügbar zu machen.

Wie unterscheiden sich private Endpunkte von lokalen VNet-Endpunkten?

Der standardmäßige VNet-lokale Endpunkt, der mit jeder Azure SQL Managed Instance-Instanz bereitgestellt wird, verhält sich so, als wäre ein Computer, auf dem der Dienst ausgeführt wird, physisch an Ihr virtuelles Netzwerk angeschlossen. Dies ermöglicht eine nahezu vollständige Steuerung des Datenverkehrs über Routingtabellen, Netzwerksicherheitsgruppen, DNS-Auflösung, Firewalls und ähnliche Mechanismen. Sie können diesen Endpunkt auch verwenden, um Ihre Instanz in Szenarien einzubeziehen, die Konnektivität mit anderen Ports als 1433 erfordern, z. B. Failovergruppen, verteilte Transaktionen und Managed Instance Link. Der lokale VNet-Endpunkt bietet zwar Flexibilität, erhöht aber die Komplexität bei der Konfiguration für bestimmte Szenarien, insbesondere für solche, die mehrere virtuelle Netzwerke oder Mandanten betreffen.

Die Einrichtung eines privaten Endpunkts ist hingegen als würde man ein physisches Netzwerkkabel von einem Computer, auf dem Azure SQL Managed Instance ausgeführt wird, in ein anderes virtuelles Netzwerk erweitern. Dieser Konnektivitätspfad wird virtuell über die Azure Private Link-Technologie hergestellt. Dies lässt nur Verbindungen in eine Richtung zu: vom privaten Endpunkt zu Azure SQL Managed Instance. Der Datenverkehr wird nur an Port 1433 (dem Standard-TDS-Datenverkehrsport) weitergeleitet. Auf diese Weise wird Ihre Azure SQL Managed Instance in einem anderen virtuellen Netzwerk verfügbar, ohne Netzwerkpeering einzurichten oder den öffentlichen Endpunkt der Instanz aktivieren zu müssen. Selbst wenn Sie die Instanz in ein anderes Subnetz verschieben, zeigen alle eingerichteten privaten Endpunkte weiterhin darauf.

Eine ausführlichere Erläuterung der verschiedenen Typen von Endpunkten, die von Azure SQL Managed Instance unterstützt werden, finden Sie in der Kommunikationsübersicht.

Wann empfehlen sich private Endpunkte?

Private Endpunkte für Azure SQL Managed Instance sind sicherer als die Verwendung eines lokalen VNet-Endpunkts oder öffentlichen Endpunkts und vereinfachen die Implementierung wichtiger Konnektivitätsszenarien. Zu diesen Szenarien gehören:

  • Airlock. Private Endpunkte für Azure SQL Managed Instance werden in einem virtuellen Netzwerk mit Jumpservern und einem ExpressRoute-Gateway bereitgestellt und bieten Sicherheit und Isolation von lokalen und Cloudressourcen.
  • Hub-and-Spoke-Topologie. Private Endpunkte in virtuellen Spokenetzwerken leiten Datenverkehr von SQL-Clients und -Anwendungen in einem virtuellen Hubnetzwerk an Azure SQL Managed Instance weiter, wodurch eine klare Netzwerkisolation und Trennung der Verantwortung erreicht wird.
  • Publisher-Consumer. Der Publisher-Mandant (z. B. ein ISV) verwaltet mehrere verwaltete SQL-Instanzen in seinen virtuellen Netzwerken. Der Publisher erstellt private Endpunkte in den virtuellen Netzwerken anderer Mandanten, um Instanzen für seine Consumer verfügbar zu machen.
  • Integration von Azure PaaS- und SaaS-Diensten. Einige PaaS- und SaaS-Dienste, z. B. Azure Data Factory, können private Endpunkte für Azure SQL Managed Instance erstellen und verwalten.

Zu den Vorteilen der Verwendung privater Endpunkte gegenüber einem lokalen oder öffentlichen VNET-Endpunkt gehören:

  • Vorhersagbarkeit von IP-Adressen: Einem privaten Endpunkt für Azure SQL Managed Instance wird eine feste IP-Adresse aus dem Adressbereich des Subnetzes zugewiesen. Diese IP-Adresse bleibt auch dann statisch, wenn sich die IP-Adressen von VNET-lokalen und öffentlichen Endpunkten ändern.
  • Präziser Netzwerkzugriff: Ein privater Endpunkt ist nur innerhalb seines virtuellen Netzwerks sichtbar.
  • Starke Netzwerkisolation: In einem Peeringszenario stellen virtuelle Netzwerke mit Peering bidirektionale Konnektivität her, während private Endpunkte unidirektional sind und keine Netzwerkressourcen innerhalb ihres Netzwerks für Azure SQL Managed Instance verfügbar machen.
  • Vermeiden von Adressüberschneidungen: Das Peering mehrerer virtueller Netzwerke erfordert eine sorgfältige IP-Speicherplatzzuweisung und kann ein Problem darstellen, wenn sich Adressräume überschneiden.
  • IP-Adressressourcen sparen: Ein privater Endpunkt nutzt nur eine IP-Adresse aus dem Adressraum seines Subnetzes.

Begrenzungen

  • Azure SQL Managed Instance erfordert, dass der genaue Instanzhostname in der Verbindungszeichenfolge vorkommt, die vom SQL-Client gesendet wird. Die Verwendung der IP-Adresse des privaten Endpunkts wird nicht unterstützt, und dabei tritt ein Fehler auf. Um dies zu beheben, konfigurieren Sie Ihren DNS-Server, oder verwenden Sie eine private DNS-Zone, wie unter Einrichten der Domänennamensauflösung für einen privaten Endpunkt beschrieben.
  • Die automatische Registrierung von DNS-Namen wird noch nicht unterstützt. Führen Sie stattdessen die Schritte unter Einrichten der Domänennamensauflösung für einen privaten Endpunkt aus.
  • Private Endpunkte für SQL Managed Instance können nur verwendet werden, um eine Verbindung mit Port 1433 herzustellen, dem Standard-TDS-Port für SQL-Datenverkehr. Komplexere Konnektivitätsszenarien, die Kommunikation über andere Ports erfordern, müssen über den lokalen VNet-Endpunkt der Instanz eingerichtet werden.
  • Private Endpunkte für Azure SQL Managed Instance erfordern ein spezielles Setup, um die erforderliche DNS-Auflösung zu konfigurieren, wie unter Einrichten der Domänennamensauflösung für einen privaten Endpunkt beschrieben.
  • Private Endpunkte werden immer mit dem Proxyverbindungstyp ausgeführt.

Erstellen eines privaten Endpunkts in einem virtuellen Netzwerk

Erstellen Sie einen privaten Endpunkt mittels Azure-Portal, Azure PowerShell oder Azure CLI:

Nachdem Sie einen privaten Endpunkt erstellt haben, müssen Sie möglicherweise auch dessen Erstellung innerhalb des virtuellen Zielnetzwerks genehmigen. Weitere Informationen finden Sie unter Überprüfen und Genehmigen einer Anforderung zum Erstellen eines privaten Endpunkts.

Um den privaten Endpunkt zu SQL Managed Instance voll funktionsfähig zu machen, befolgen Sie die Anweisungen zum Einrichten der Domänennamensauflösung für den privaten Endpunkt.

Erstellen eines privaten Endpunkts in einem PaaS- oder SaaS-Dienst

Einige Azure PaaS- und SaaS-Dienste können private Endpunkte verwenden, um aus ihren Umgebungen auf Ihre Daten zuzugreifen. Das Verfahren zum Einrichten eines privaten Endpunkts in einem solchen Dienst (manchmal auch als „verwalteter privater Endpunkt“ oder „privater Endpunkt in einem verwalteten virtuellen Netzwerk“ bezeichnet) variiert von Dienst zu Dienst. Administrator*innen müssen die Anforderung weiterhin auf Azure SQL Managed Instance überprüfen und genehmigen, wie unter Überprüfen und Genehmigen einer Anforderung zum Erstellen eines privaten Endpunkts beschrieben.

Hinweis

Azure SQL Managed Instance erfordert, dass die Verbindungszeichenfolge vom SQL-Client den Namen der Instanz als erstes Segment des Domänennamens trägt (z. B. <instance-name>.<dns-zone>.database.windows.net). PaaS- und SaaS-Dienste, die versuchen, über die IP-Adresse eine Verbindung mit dem privaten Endpunkt von Azure SQL Managed Instance herzustellen, können keine Verbindung herstellen.

Erstellen mandantenübergreifender privater Endpunkte

Private Endpunkte zu Azure SQL Managed Instance können auch in verschiedenen Azure-Mandanten erstellt werden. Dazu muss der Administrator des virtuellen Netzwerks, in dem der private Endpunkt angezeigt werden soll, zunächst die vollständige Ressourcen-ID der Azure SQL Managed Instance erhalten, von der er einen privaten Endpunkt anfordern möchte. Mit diesen Informationen kann ein neuer privater Endpunkt im Private Link Center erstellt werden. Wie zuvor erhält der Administrator der Azure SQL Managed Instance eine Anforderung, die er überprüfen und genehmigen oder ablehnen kann, wie unter Überprüfen und Genehmigen einer Anforderung zum Erstellen eines privaten Endpunkts beschrieben.

Überprüfen und Genehmigen einer Anforderung zum Erstellen eines privaten Endpunkts

Sobald eine Anforderung zum Erstellen eines privaten Endpunkts erstellt wurde, kann der SQL-Administrator die Verbindung des privaten Endpunkts mit Azure SQL Managed Instance verwalten. Der erste Schritt der Verwaltung einer neuen Verbindung mit einem privaten Endpunkt besteht darin, den privaten Endpunkt zu überprüfen und zu genehmigen. Dieser Schritt erfolgt automatisch, wenn der Benutzer oder Dienst, der den privaten Endpunkt erstellt, über ausreichende Azure RBAC-Berechtigungen für die Ressource der Azure SQL Managed Instance verfügt. Wenn der Benutzer nicht über ausreichende Berechtigungen verfügt, muss die Überprüfung und Genehmigung des privaten Endpunkts manuell erfolgen.

Führen Sie die folgenden Schritte aus, um einen privaten Endpunkt zu genehmigen:

  1. Navigieren Sie im Azure-Portal zu Ihrer Instanz von Azure SQL Managed Instance.

  2. Wählen Sie unter Sicherheit die Option Verbindungen mit privatem Endpunkt aus.

    Screenshot of the Azure portal, private endpoint connections page showing two pending connections.

  3. Überprüfen Sie die Verbindungen mit dem Status „Ausstehend“, und aktivieren Sie das Kontrollkästchen, um eine oder mehrere private Endpunktverbindungen auszuwählen, die genehmigt oder abgelehnt werden sollen.

    Screenshot of the Azure portal, one private endpoint connection selected for approval.

  4. Wählen Sie Genehmigen oder Ablehnen und dann im Dialogfeld Ja aus, um Ihre Aktion zu überprüfen.

    Screenshot of dialog prompting for a response message to accompany the approval of a connection.

  5. Nachdem Sie eine Verbindung genehmigt oder abgelehnt haben, gibt die Liste Verbindung mit privaten Endpunkten den Status der aktuellen Verbindungen mit privaten Endpunkten sowie die Anforderung/Antwort-Nachricht an.

    Screenshot of the Azure portal, private endpoint connections page showing one pending and one approved connection.

Einrichten der Domänennamensauflösung für private Endpunkte

Nachdem Sie einen privaten Endpunkt für Azure SQL Managed Instance erstellt haben, müssen Sie die Domänennamensauflösung konfigurieren, da Anmeldeversuche andernfalls nicht gelingen. Die folgende Methode funktioniert für virtuelle Netzwerke, die die Azure DNS-Auflösung verwenden. Wenn Ihr virtuelles Netzwerk für die Verwendung eines benutzerdefinierten DNS-Servers konfiguriert ist, passen Sie die Schritte entsprechend an.

Um die Domänennamensauflösung für einen privaten Endpunkt zu einer Instanz einzurichten, deren Domänenname des VNet-lokalen Endpunkts <instance-name>.<dns-zone>.database.windows.net lautet, führen Sie eines der beiden folgenden Verfahren aus, je nachdem, ob sich die Instanz und ihr privater Endpunkt im selben virtuellen Netzwerk oder in unterschiedlichen virtuellen Netzwerken befinden.

Wichtig

Ändern Sie nicht, wie der Domänenname des VNet-lokalen Endpunkts von Azure SQL Managed Instance innerhalb des eigenen virtuellen Netzwerks aufgelöst wird. Dies würde die Fähigkeit der Instanz beeinträchtigen, Verwaltungsvorgänge auszuführen.

Führen Sie die folgenden Schritte aus, wenn sich der private Endpunkt und Azure SQL Managed Instance in unterschiedlichen virtuellen Netzwerken befinden.

Nachdem Sie diese Schritte ausgeführt haben, werden SQL-Clients, die eine Verbindung aus dem virtuellen Netzwerk des Endpunkts mit <instance-name>.<dns-zone>.database.windows.net herstellen, transparent über den privaten Endpunkt weitergeleitet.

  1. Rufen Sie die IP-Adresse des privaten Endpunkts ab, indem Sie entweder das Private Link Center besuchen oder die folgenden Schritte ausführen:

    1. Navigieren Sie im Azure-Portal zu Ihrer Instanz von Azure SQL Managed Instance.

    2. Wählen Sie unter Sicherheit die Option Verbindungen mit privatem Endpunkt aus.

    3. Suchen Sie in der Tabelle nach der Verbindung mit dem privaten Endpunkt, und wählen Sie den Namen des privaten Endpunkts für die ausgewählte Verbindung aus.

      Screenshot of the Azure portal, private endpoint connections pane the private endpoint name highlighted.

    4. Wählen Sie auf der Seite *Übersicht die Netzwerkschnittstelle aus.

      Screenshot of the Azure portal, private endpoint connection overview with a highlight on network interface.

    5. Aktivieren Sie auf der Seite Übersicht die Option Grundlagen, um die Private IP-Adresse zu identifizieren und zu kopieren.

      Screenshot of the Azure portal, private endpoint connection's network interface with a highlight on its private IP address.

  2. Erstellen Sie eine private Azure DNS-Zone mit dem Namen privatelink.<dns-zone>.database.windows.net.

  3. Verknüpfen Sie die private DNS-Zone mit dem virtuellen Endpunktnetzwerk.

  4. Erstellen Sie in der DNS-Zone einen neuen Datensatz mit den folgenden Werten:

    • Name: <instance-name>
    • Typ: A
    • IP-Adresse: IP-Adresse des privaten Endpunkts, die im vorherigen Schritt abgerufen wurde.

Nächste Schritte