Gewähren des Zugriffs auf Azure Event Hubs-Namespaces über private Endpunkte
Mit dem Azure Private Link-Dienst können Sie über einen privaten Endpunkt in Ihrem virtuellen Netzwerk auf Azure-Dienste wie Azure Event Hubs, Azure Storage und Azure Cosmos DB sowie auf in Azure gehostete Kunden-/Partnerdienste zugreifen.
Ein privater Endpunkt ist eine Netzwerkschnittstelle, die Sie privat und sicher mit einem von Azure Private Link betriebenen Dienst verbindet. Der private Endpunkt verwendet eine private IP-Adresse aus Ihrem virtuellen Netzwerk und bindet den Dienst dadurch in Ihr virtuelles Netzwerk ein. Der gesamte für den Dienst bestimmte Datenverkehr wird über den privaten Endpunkt geleitet. Es sind also keine Gateways, NAT-Geräte, ExpressRoute-/VPN-Verbindungen oder öffentlichen IP-Adressen erforderlich. Der Datenverkehr zwischen Ihrem virtuellen Netzwerk und dem Dienst wird über das Microsoft-Backbone-Netzwerk übertragen und dadurch vom öffentlichen Internet isoliert. Sie können eine Verbindung mit einer Instanz einer Azure-Ressource herstellen, was ein Höchstmaß an Granularität bei der Zugriffssteuerung ermöglicht.
Weitere Informationen finden Sie unter Was ist Azure Private Link?.
Wichtige Punkte
- Dieses Feature wird im Basic-Tarif nicht unterstützt.
- Durch das Aktivieren von privaten Endpunkten kann verhindert werden, dass andere Azure-Dienste mit Event Hubs interagieren. Unter anderem werden Anforderungen von anderen Azure-Diensten, aus dem Azure-Portal und von Protokollierungs-/Metrikdiensten blockiert. Als Ausnahme können Sie bestimmten vertrauenswürdigen Diensten den Zugriff auf Event Hubs-Ressourcen erlauben, auch wenn private Endpunkte aktiviert sind. Eine Liste der vertrauenswürdigen Dienste finden Sie unter Vertrauenswürdige Dienste.
- Geben Sie mindestens eine IP-Regel oder VNET-Regel für den Namespace an, um nur Datenverkehr von den angegebenen IP-Adressen oder dem Subnetz eines virtuellen Netzwerks zuzulassen. Wenn keine IP- und VNET-Regeln vorliegen, kann (mithilfe des Zugriffsschlüssels) über das öffentliche Internet auf den Namespace zugegriffen werden.
Hinzufügen eines privaten Endpunkts über das Azure-Portal
Voraussetzungen
Um einen Event Hubs-Namespace in Azure Private Link zu integrieren, benötigen Sie die folgenden Entitäten oder Berechtigungen:
- Ein Event Hubs-Namespace
- Ein virtuelles Azure-Netzwerk
- Ein Subnetz in dem virtuellen Netzwerk Sie können das Standardsubnetz verwenden.
- Berechtigungen vom Typ „Besitzer“ oder „Mitwirkender“ für den Namespace und für das virtuelle Netzwerk.
Der private Endpunkt und das virtuelle Netzwerk müssen sich in der gleichen Region befinden. Wenn Sie über das Portal eine Region für den privaten Endpunkt auswählen, wird automatisch nach virtuellen Netzwerken in dieser Region gefiltert. Der Namespace kann sich in einer anderen Region befinden.
Der private Endpunkt verwendet eine private IP-Adresse in Ihrem virtuellen Netzwerk.
Konfigurieren von privatem Zugriff beim Erstellen eines Namespace
Beim Erstellen eines Namespace können Sie entweder nur öffentlichen Zugriff (aus allen Netzwerken) oder nur privaten Zugriff (nur über private Endpunkte) auf den Namespace zulassen.
Wenn Sie auf der Seite Netzwerk des Assistenten zum Erstellen von Namespaces die Option Privater Zugriff auswählen, können Sie auf der Seite einen privaten Endpunkt hinzufügen, indem Sie die Schaltfläche + Privater Endpunkt auswählen. Ausführliche Schritte zum Hinzufügen eines privaten Endpunkts finden Sie im nächsten Abschnitt.
Konfigurieren von privatem Zugriff für einen vorhandenen Namespace
Wenn Sie bereits über einen Event Hubs-Namespace verfügen, können Sie wie folgt eine Private Link-Verbindung erstellen:
Melden Sie sich beim Azure-Portal an.
Geben Sie auf der Suchleiste den Suchbegriff Event Hubs ein.
Wählen Sie in der Liste den Namespace aus, dem Sie einen privaten Endpunkt hinzufügen möchten.
Wählen Sie auf der Seite Netzwerk unter Öffentlicher Netzwerkzugriff die Option Deaktiviert aus, wenn auf den Namespace nur über private Endpunkte zugegriffen werden soll.
Wählen Sie unter Zulassen, dass vertrauenswürdige Microsoft-Dienste diese Firewall umgehen die Option Ja aus, wenn Sie zulassen möchten, dass vertrauenswürdige Microsoft-Dienste diese Firewall umgehen.
Wechseln Sie zur Registerkarte Privater Endpunktverbindungen.
Wählen Sie im oberen Seitenbereich die Schaltfläche + Privater Endpunkt aus.
Führen Sie auf der Seite Grundlagen die folgenden Schritte aus:
Wählen Sie das Azure-Abonnement aus, in dem Sie den privaten Endpunkt erstellen möchten.
Wählen Sie die Ressourcengruppe für die private Endpunktressource aus.
Geben Sie einen Namen für den privaten Endpunkt ein.
Geben Sie einen Namen für die Netzwerkschnittstelle ein.
Wählen Sie eine Region für den privaten Endpunkt aus. Ihr privater Endpunkt muss sich in der gleichen Region befinden wie Ihr virtuelles Netzwerk, kann aber in einer anderen Region als die Private Link-Ressource enthalten sein, mit der Sie eine Verbindung herstellen.
Wählen Sie unten auf der Seite die Schaltfläche Weiter: Ressource > aus.
Überprüfen Sie auf der Seite Ressource die Einstellungen, und wählen Sie dann Weiter: Virtuelles Netzwerk aus.
Wählen Sie auf der Seite Virtuelles Netzwerk das Subnetz in einem virtuellen Netzwerk aus, in dem Sie den privaten Endpunkt bereitstellen möchten.
Wählen Sie ein virtuelles Netzwerk aus. Nur virtuelle Netzwerke im aktuell ausgewählten Abonnement und am aktuell ausgewählten Standort werden in der Dropdownliste aufgeführt.
Wählen Sie ein Subnetz innerhalb des ausgewählten virtuellen Netzwerks aus.
Beachten Sie, dass die Netzwerkrichtlinie für private Endpunkte deaktiviert ist. Wenn Sie sie aktivieren möchten, wählen Sie Bearbeiten aus, aktualisieren Sie die Einstellung, und wählen Sie dann Speichern aus.
Für Konfiguration der privaten IP-Adresse ist standardmäßig die Option IP-Adresse dynamisch zuweisen ausgewählt. Wenn Sie eine statische IP-Adresse zuweisen möchten, wählen Sie IP-Adresse statisch zuweisen aus.
Wählen Sie als Anwendungssicherheitsgruppe eine vorhandene Anwendungssicherheitsgruppe aus, oder erstellen Sie eine Anwendungssicherheitsgruppe, die dem privaten Endpunkt zugeordnet werden soll.
Wählen Sie die Schaltfläche Weiter: DNS> unten auf der Seite aus.
Wählen Sie auf der Seite DNS aus, ob der private Endpunkt in eine private DNS-Zone integriert werden soll, und wählen Sie dann Weiter: Tags aus.
Erstellen Sie auf der Seite Tags beliebige Tags (Namen und Werte), die Sie der privaten Endpunktressource zuordnen möchten. Wählen Sie dann am unteren Rand der Seite die Schaltfläche Überprüfen und erstellen aus.
Überprüfen Sie auf der Seite Überprüfen und erstellen alle Einstellungen, und wählen Sie dann Erstellen aus, um den privaten Endpunkt zu erstellen.
Vergewissern Sie sich, dass die von Ihnen erstellte private Endpunktverbindung in der Liste der Endpunkte angezeigt wird. Aktualisieren Sie die Seite, und wechseln Sie dann zur Registerkarte Private Endpunktverbindungen. In diesem Beispiel wird der private Endpunkt automatisch genehmigt, weil Sie eine Verbindung mit einer Azure-Ressource in Ihrem Verzeichnis hergestellt haben und über ausreichende Berechtigungen verfügen.
Vertrauenswürdige Microsoft-Dienste
Wenn Sie die Einstellung Vertrauenswürdigen Microsoft-Diensten die Umgehung dieser Firewall erlauben aktivieren, wird den folgenden Diensten im gleichen Mandanten Zugriff auf Ihre Event Hubs-Ressourcen gewährt.
Vertrauenswürdiger Dienst | Unterstützte Verwendungsszenarien |
---|---|
Azure Event Grid | Ermöglicht Azure Event Grid das Senden von Ereignissen an Event Hubs in Ihrem Event Hubs-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:
Weitere Informationen finden Sie unter Ereignisübermittlung mit einer verwalteten Identität. |
Azure Stream Analytics | Ermöglicht einem Azure Stream Analytics-Auftrag das Lesen von Daten von Event Hubs für Eingaben bzw. das Schreiben von Daten in Event Hubs für Ausgaben in Ihrem Event Hubs-Namespace. Wichtig: Der Stream Analytics-Auftrag sollte so konfiguriert werden, dass er eine verwaltete Identität für den Zugriff auf den Event Hub verwendet. Weitere Informationen finden Sie unter Verwenden von verwalteten Identitäten für den Zugriff auf den Event Hub aus einem Azure Stream Analytics-Auftrag (Vorschau). |
Azure IoT Hub | Ermöglicht IoT Hub das Senden von Nachrichten an Event Hubs in Ihrem Event Hubs-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:
|
Azure API Management | Mit dem API Management-Dienst können Sie Ereignisse an einen Event Hub im Event Hubs-Namespace senden.
|
Azure Monitor (Diagnoseeinstellungen und Aktionsgruppen) | Ermöglicht Azure Monitor das Senden von Diagnoseinformationen und Warnungsbenachrichtigungen an Event Hubs in Ihrem Event Hubs-Namespace. Azure Monitor kann Daten aus dem Event Hub lesen und in den Event Hub schreiben. |
Azure Synapse | Ermöglicht Azure Synapse, mithilfe der verwalteten Identität des Synapse-Arbeitsbereichs eine Verbindung mit dem Event Hub herzustellen. Fügen Sie die Rolle Azure Event Hubs-Datensender, -Datenempfänger oder -Datenbesitzer zur Identität im Event Hubs-Namespace hinzu. |
Azure-Daten-Explorer | Ermöglicht Azure Data Explorer den Empfang von Ereignissen von Event Hub mithilfe der verwalteten Identität des Clusters. Sie müssen dann die folgenden Schritte ausführen:
|
Azure IoT Central | Ermöglicht IoT Central das Exportieren von Daten zu Event Hubs in Ihrem Event Hubs-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:
|
Azure Health Data Services | Ermöglicht dem IoT-Connector von Healthcare APIs, medizinische Gerätedaten aus Ihrem Event Hubs-Namensraum zu erfassen und die Daten in Ihrem konfigurierten Fast Healthcare Interoperability Resources (FHIR®)-Dienst zu speichern. Der IoT-Connector sollte so konfiguriert werden, dass er eine verwaltete Identität für den Zugriff auf den Event Hub verwendet. Weitere Informationen finden Sie unter Erste Schritte mit dem IoT-Connector – Azure Healthcare-APIs. |
Azure Digital Twins | Ermöglicht Azure Digital Twins das Auslesen von Daten zu Event Hubs in Ihrem Event Hubs-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:
|
Die anderen vertrauenswürdigen Dienste für Azure Event Hubs finden Sie unten:
- Azure Arc
- Azure Kubernetes
- Azure Machine Learning
- Microsoft Purview
Um vertrauenswürdigen Diensten den Zugriff auf Ihren Namespace zu erlauben, wechseln Sie zur Registerkarte Öffentlicher Zugriff auf der Seite Netzwerk und wählen Sie Ja für Vertrauenswürdigen Microsoft-Diensten das Umgehen dieser Firewall erlauben? aus.
Hinzufügen eines privaten Endpunkts mit PowerShell
Im folgenden Beispiel wird gezeigt, wie Azure PowerShell verwendet wird, um eine private Endpunktverbindung zu erstellen. Es wird kein dedizierter Cluster für Sie erstellt. Führen Sie die Schritte in diesem Artikel aus, um einen dedizierten Event Hubs-Cluster zu erstellen.
$rgName = "<RESOURCE GROUP NAME>"
$vnetlocation = "<VIRTUAL NETWORK 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 an event hubs namespace in a dedicated cluster
$namespaceResource = New-AzResource -Location $namespaceLocation `
-ResourceName $namespaceName `
-ResourceGroupName $rgName `
-Sku @{name = "Standard"; capacity = 1} `
-Properties @{clusterArmId = "/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/clusters/<EVENT HUBS CLUSTER NAME>"} `
-ResourceType "Microsoft.EventHub/namespaces" -ApiVersion "2018-01-01-preview"
# create private endpoint connection
$privateEndpointConnection = New-AzPrivateLinkServiceConnection `
-Name $peConnectionName `
-PrivateLinkServiceId $namespaceResource.ResourceId `
-GroupId "namespace"
# get subnet object that you'll use later
$virtualNetwork = Get-AzVirtualNetwork -ResourceGroupName $rgName -Name $vnetName
$subnet = $virtualNetwork | Select -ExpandProperty subnets `
| Where-Object {$_.Name -eq $subnetName}
# create a private endpoint
$privateEndpoint = New-AzPrivateEndpoint -ResourceGroupName $rgName `
-Name $vnetName `
-Location $vnetlocation `
-Subnet $subnet `
-PrivateLinkServiceConnection $privateEndpointConnection
(Get-AzResource -ResourceId $namespaceResource.ResourceId -ExpandProperties).Properties
Konfigurieren der privaten DNS-Zone
Erstellen Sie eine private DNS-Zone für die Event Hubs-Domäne und eine Zuordnungsverknüpfung mit dem virtuellen Netzwerk:
$zone = New-AzPrivateDnsZone -ResourceGroupName $rgName `
-Name "privatelink.servicebus.windows.net"
$link = New-AzPrivateDnsVirtualNetworkLink -ResourceGroupName $rgName `
-ZoneName "privatelink.servicebus.windows.net" `
-Name "mylink" `
-VirtualNetworkId $virtualNetwork.Id
$networkInterface = Get-AzResource -ResourceId $privateEndpoint.NetworkInterfaces[0].Id -ApiVersion "2019-04-01"
foreach ($ipconfig in $networkInterface.properties.ipConfigurations) {
foreach ($fqdn in $ipconfig.properties.privateLinkConnectionProperties.fqdns) {
Write-Host "$($ipconfig.properties.privateIPAddress) $($fqdn)"
$recordName = $fqdn.split('.',2)[0]
$dnsZone = $fqdn.split('.',2)[1]
New-AzPrivateDnsRecordSet -Name $recordName -RecordType A -ZoneName "privatelink.servicebus.windows.net" `
-ResourceGroupName $rgName -Ttl 600 `
-PrivateDnsRecords (New-AzPrivateDnsRecordConfig -IPv4Address $ipconfig.properties.privateIPAddress)
}
}
Verwalten eines privaten Endpunkts mit dem Azure-Portal
Wenn Sie einen privaten Endpunkt erstellen, muss die Verbindung genehmigt werden. Wenn sich die Ressource, für die Sie einen privaten Endpunkt erstellen, in Ihrem Verzeichnis befindet, können Sie die Verbindungsanforderung genehmigen, sofern Sie über ausreichende Berechtigungen verfügen. Wenn Sie eine Verbindung mit einer Azure-Ressource in einem anderen Verzeichnis herstellen, müssen Sie warten, bis der Besitzer dieser Ressource Ihre Verbindungsanforderung genehmigt hat.
Es gibt vier Möglichkeiten für den Bereitstellungsstatus:
Dienstaktion | Zustand des privaten Endpunkts des Dienstconsumers | BESCHREIBUNG |
---|---|---|
Keine | Ausstehend | Die Verbindung wurde manuell erstellt, und die Genehmigung des Besitzers der Private Link-Ressource steht aus. |
Genehmigen | Genehmigt | Die Verbindung wurde automatisch oder manuell genehmigt und ist zur Verwendung bereit. |
Reject | Rejected (Abgelehnt) | Die Verbindung wurde vom Besitzer der Private Link-Ressource abgelehnt. |
Remove (Entfernen) | Getrennt | Die Verbindung wurde vom Besitzer der Private Link-Ressource entfernt. Der private Endpunkt dient nur noch Informationszwecken und sollte zur Bereinigung gelöscht werden. |
Genehmigt die Verbindung eines privaten Endpunkts, lehnt sie ab oder entfernt sie.
- Melden Sie sich beim Azure-Portal an.
- Geben Sie auf der Suchleiste den Suchbegriff Event Hubs ein.
- Wählen Sie den Namespace aus, den Sie verwalten möchten.
- Wählen Sie die Registerkarte Netzwerk aus.
- Gehen Sie zum entsprechenden Abschnitt, je nachdem, welchen Vorgang Sie durchführen möchten: Genehmigen, Ablehnen oder Entfernen.
Genehmigen einer Verbindung mit einem privaten Endpunkt
Sollten ausstehende Verbindungen vorhanden sein, wird in der Liste eine Verbindung mit dem Bereitstellungsstatus Ausstehend angezeigt.
Wählen Sie den privaten Endpunkt aus, den Sie genehmigen möchten.
Wählen Sie die Schaltfläche Genehmigen aus.
Geben Sie auf der Seite Verbindung genehmigen einen Kommentar ein (optional), und wählen Sie dann Ja aus. Wenn Sie Nein auswählen, geschieht nichts.
Der Status der Verbindung mit dem privaten Endpunkt sollte in der Liste in Genehmigt geändert werden.
Ablehnen einer Verbindung mit einem privaten Endpunkt
Falls Verbindungen mit privaten Endpunkten vorhanden sind, die Sie ablehnen möchten, wählen Sie zuerst die Verbindung und dann die Schaltfläche Ablehnen aus. Das funktioniert sowohl für ausstehende Anforderungen als auch für bereits vorhandene Verbindungen.
Geben Sie auf der Seite Verbindung ablehnen einen Kommentar ein (optional), und wählen Sie dann Ja aus. Wenn Sie Nein auswählen, geschieht nichts.
Der Status der Verbindung mit dem privaten Endpunkt sollte in der Liste in Abgelehnt geändert werden.
Entfernen einer Verbindung mit einem privaten Endpunkt
- Um eine Verbindung mit einem privaten Endpunkt zu entfernen, wählen Sie sie in der Liste aus, und wählen Sie Entfernen auf der Symbolleiste aus.
- Wählen Sie auf der Seite Verbindung löschenJa aus, um das Löschen des privaten Endpunkts zu bestätigen. Wenn Sie Nein auswählen, geschieht nichts.
- Der Status sollte in Getrennt geändert werden. Anschließend wird der Endpunkt nicht mehr in der Liste angezeigt.
Überprüfen, ob die Private Link-Verbindung funktioniert
Vergewissern Sie sich, dass Ressourcen innerhalb des virtuellen Netzwerks, in dem sich auch der private Endpunkt befindet, mit Ihrem Event Hubs-Namespace eine Verbindung über eine private IP-Adresse herstellen, und dass die Integration in die private DNS-Zone korrekt ist.
Erstellen Sie zunächst einen virtuellen Computer. Eine entsprechende Anleitung finden Sie unter Schnellstart: Erstellen eines virtuellen Windows-Computers im Azure-Portal.
Gehen Sie auf der Registerkarte Netzwerk wie folgt vor:
- Geben Sie ein virtuelles Netzwerk und ein Subnetz an. Sie müssen das virtuelle Netzwerk auswählen, in dem Sie den privaten Endpunkt bereitgestellt haben.
- Geben Sie eine öffentliche IP-Ressource an.
- Wählen Sie für NIC-Netzwerksicherheitsgruppe die Option Keine aus.
- Wählen Sie für den LastenausgleichNein aus.
Stellen Sie eine Verbindung mit der VM her, öffnen Sie die Befehlszeile, und führen Sie den folgenden Befehl aus:
nslookup <event-hubs-namespace-name>.servicebus.windows.net
Das Ergebnis sollte in etwa wie folgt aussehen.
Non-authoritative answer:
Name: <event-hubs-namespace-name>.privatelink.servicebus.windows.net
Address: 10.0.0.4 (private IP address associated with the private endpoint)
Aliases: <event-hubs-namespace-name>.servicebus.windows.net
Einschränkungen und Entwurfsaspekte
- Preisinformationen finden Sie unter Azure Private Link – Preise.
- Dieses Feature steht in allen öffentlichen Azure-Regionen zur Verfügung.
- Maximal zulässige Anzahl privater Endpunkte pro Event Hubs-Namespace: 120.
- Der Datenverkehr wird auf Anwendungsebene blockiert, nicht auf TCP-Ebene. Daher sehen Sie, dass TCP-Verbindungen oder
nslookup
-Vorgänge für den öffentlichen Endpunkt erfolgreich sind, obwohl der öffentliche Zugriff deaktiviert ist.
Weitere Informationen finden Sie unter Was ist der Azure Private Link-Dienst? – Einschränkungen.
Zugehöriger Inhalt
- Weitere Informationen zu Azure Private Link.
- Weitere Informationen zu Azure Event Hubs.