Zulassen des Zugriffs auf Azure Event Hubs-Namespaces von bestimmten IP-Adressen oder -Adressbereichen

Standardmäßig kann über das Internet auf Event Hubs-Namespaces zugegriffen werden, solange die Anforderung eine gültige Authentifizierung und Autorisierung aufweist. Mit der IP-Firewall können Sie den Zugriff auf eine Gruppe von IPv4- oder IPv6-Adressen oder -Adressbereichen in der CIDR-Notation (Classless Inter-Domain Routing) weiter einschränken.

Diese Funktion ist in Szenarien hilfreich, in denen Azure Event Hubs nur von bestimmten bekannten Websites aus zugänglich sein soll. Mithilfe von Firewallregeln können Sie Regeln konfigurieren, um Datenverkehr von bestimmten IPv4- und IPv6-Adressen zuzulassen. Wenn Sie z. B. Event Hubs mit Azure Express Route verwenden, können Sie eine Firewallregel erstellen, um Datenverkehr nur von den IP-Adressen Ihrer lokalen Infrastruktur zuzulassen.

IP-Firewallregeln

IP-Firewallregeln werden auf Event Hubs-Namespaceebene angegeben. Daher gelten die Regeln für alle Clientverbindungen mit einem beliebigen unterstützten Protokoll. Jeder Verbindungsversuch von einer IP-Adresse, die nicht mit einer zulässigen IP-Regel im Event Hubs-Namespace übereinstimmt, wird als nicht autorisiert abgelehnt. In der Antwort wird die IP-Regel nicht erwähnt. IP-Filterregeln werden der Reihe nach angewendet, und die erste Regel, die eine Übereinstimmung mit der IP-Adresse ergibt, bestimmt die Aktion (Zulassen oder Ablehnen).

Wichtige Punkte

  • Dieses Feature wird im Basic-Tarif nicht unterstützt.
  • Durch das Aktivieren von Firewallregeln für Ihren Event Hubs-Namespace werden eingehende Anforderungen automatisch blockiert, es sei denn, die Anforderungen stammen von einem Dienst, der von zulässigen öffentlichen IP-Adressen aus operiert. Unter anderem werden Anforderungen von anderen Azure-Diensten, aus dem Azure-Portal und von Protokollierungs- bzw. Metrikdiensten blockiert. Als Ausnahme können Sie bestimmten vertrauenswürdigen Diensten selbst dann den Zugriff auf Event Hubs-Ressourcen erlauben, wenn IP-Filter aktiviert sind. Eine Liste der vertrauenswürdigen Dienste finden Sie unter Vertrauenswürdige Microsoft-Dienste.
  • Geben Sie mindestens eine IP-Firewallregel 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.

Verwenden des Azure-Portals

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. Nachdem der Namespace erstellt wurde, können Sie den Zugriff von bestimmten IP-Adressen oder aus bestimmten virtuellen Netzwerken (mithilfe von Netzwerkdienstendpunkten) zulassen.

Konfigurieren des öffentlichen Zugriffs beim Erstellen eines Namespace

Um den öffentlichen Zugriff zu aktivieren, wählen Sie im Assistenten zum Erstellen von Namespaces auf der Seite Netzwerk die Option Öffentlicher Zugriff aus.

Screenshot showing the Networking page of the Create namespace wizard with Public access option selected.

Wählen Sie nach Erstellung des Namespace im linken Menü der Seite Event Hubs-Namespace die Option Netzwerk aus. Sie sehen, dass die Option Alle Netzwerke ausgewählt ist. Sie können die Option Ausgewählte Netzwerke auswählen und den Zugriff von bestimmten IP-Adressen oder bestimmten virtuellen Netzwerken zulassen. Der nächste Abschnitt enthält Details zum Konfigurieren der IP-Firewall, um die IP-Adressen anzugeben, von denen aus der Zugriff zulässig ist.

Konfigurieren einer IP-Firewall für einen vorhandenen Namespace

In diesem Abschnitt erfahren Sie, wie Sie im Azure-Portal IP-Firewallregeln für einen Event Hubs-Namespace erstellen.

  1. Navigieren Sie im Azure-Portal zu Ihrem Event Hubs-Namespace.

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

  3. Wählen Sie auf der Seite Netzwerk unter Öffentlicher Netzwerkzugriff die Option Ausgewählte Netzwerke aus, um den Zugriff nur über angegebene IP-Adressen zuzulassen.

    Hier finden Sie weitere Details zu den Optionen, die auf der Seite Öffentlicher Netzwerkzugriff zur Verfügung stehen:

    • Deaktiviert. Mit dieser Option wird jeglicher öffentliche Zugriff auf den Namespace deaktiviert. Auf den Namespace kann nur über private Endpunkte zugegriffen werden.

    • Ausgewählte Netzwerke: Diese Option ermöglicht den öffentlichen Zugriff auf den Namespace unter Verwendung eines Zugriffsschlüssels aus ausgewählten Netzwerken.

      Wichtig

      Wenn Sie Ausgewählte Netzwerke auswählen, fügen Sie mindestens eine IP-Firewallregel oder ein virtuelles Netzwerk hinzu, das Zugriff auf den Namespace hat. Wählen Sie Deaktiviert, wenn Sie den gesamten Datenverkehr an diesen Namespace auf private Endpunkte beschränken möchten.

    • Alle Netzwerke (Standardeinstellung): Diese Option ermöglicht den öffentlichen Zugriff aus allen Netzwerken mit einem Zugriffsschlüssel. Wenn Sie die Option Alle Netzwerke auswählen, akzeptiert der Event Hub Verbindungen von beliebigen IP-Adressen (mit dem Zugriffsschlüssel). Diese Einstellung entspricht einer Regel, bei der der IP-Adressbereich 0.0.0.0/0 zulässig ist.

  4. Um den Zugriff auf bestimmte IP-Adressen zu beschränken, wählen Sie die Option Ausgewählte Netzwerke aus, und gehen Sie dann wie folgt vor:

    1. Wählen Sie im Abschnitt Firewall die Option Client-IP-Adresse hinzufügen aus, um Ihrer aktuellen Client-IP-Adresse Zugriff auf den Namespace zu gewähren.

    2. Geben Sie für Adressbereichbestimmte IPv4- oder IPv6-Adressen oder Adressbereiche in der CIDR-Schreibweise ein.

      Wichtig

      Wenn der Dienst in Zukunft mit der Unterstützung von IPv6-Verbindungen beginnt und Clients automatisch zu IPv6 wechseln, werden Ihre Clients abgebrochen, wenn Sie nur über IPv4-Adressen und nicht über IPv6-Adressen verfügen. Daher wird empfohlen, der Liste der zulässigen IP-Adressen jetzt IPv6-Adressen hinzuzufügen, damit Ihre Clients nicht unterbrechen, wenn der Dienst schließlich zur Unterstützung von IPv6 wechselt.

    3. Wählen Sie unter Vertrauenswürdigen Microsoft-Diensten die Umgehung dieser Firewall erlauben? die Option „Ja“ oder „Nein“ aus. Weitere Informationen finden Sie unter Vertrauenswürdige Microsoft-Dienste.

      Firewall section highlighted in the Public access tab of the Networking page.

  5. Wählen Sie auf der Symbolleiste Speichern aus, um die Einstellungen zu speichern. Warten Sie einige Minuten, bis die Bestätigung in den Portalbenachrichtigungen angezeigt wird.

    Hinweis

    Informationen zum Beschränken des Zugriffs auf bestimmte virtuelle Netzwerke finden Sie unter Zulassen des Zugriffs aus bestimmten Netzwerken.

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:
  • Aktivieren der vom System zugewiesenen Identität für ein Thema oder eine Domäne
  • Hinzufügen der Identität der Rolle „Azure Event Hubs-Datenabsender“ für den Event Hubs-Namespace
  • Konfigurieren Sie dann das Ereignisabonnement, das einen Event Hub als Endpunkt verwendet, um die vom System zugewiesene Identität zu verwenden.

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:
  • Aktivieren der systemseitig zugewiesenen Identität für Ihren IoT-Hub
  • Fügen Sie die Identität der Rolle „Azure Event Hubs-Datensender“ im Event Hubs-Namespace hinzu.
  • Konfigurieren Sie dann die IoT Hub-Instanz, die einen Event Hub als benutzerdefinierten Endpunkt nur Nutzung der identitätsbasierten Authentifizierung verwendet.
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:
  • Konfigurieren der verwalteten Identität in Azure Data Explorer
  • Erteilen der Identität im Event Hub die Rolle Azure Event Hubs-Datenempfänger.
 
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:

  • Aktivieren Sie die systemseitig zugewiesene Identität für Ihre IoT Central-Anwendung.
  • Fügen Sie die Identität der Rolle Azure Event Hubs-Datensender im Event Hubs-Namespace hinzu.
  • Konfigurieren Sie dann das Event Hubs-Exportziel in Ihrer IoT Central-Anwendung, um die identitätsbasierte Authentifizierung zu verwenden.
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:

  • Aktivieren Sie die systemseitig zugewiesene Identität für Ihre Azure Digital Twins-Instanz.
  • Fügen Sie die Identität der Rolle Azure Event Hubs-Datensender im Event Hubs-Namespace hinzu.
  • Konfigurieren Sie dann einen Azure Digital Twins-Endpunkt oder eine Azure Digital Twins-Datenverlaufsverbindung, welche die systemseitig zugewiesene Identität zur Authentifizierung verwendet. Weitere Informationen zum Konfigurieren von Endpunkten und Ereignisrouten zu Event Hub-Ressourcen von Azure Digital Twins finden Sie unter Routen von Azure Digital Twins-Ereignissen und Erstellen von Endpunkten in Azure Digital Twins.

Die anderen vertrauenswürdigen Dienste für Azure Event Hubs finden Sie unten:

  • Azure Arc
  • Azure Kubernetes
  • Azure Machine Learning
  • Microsoft Purview

Verwenden von Resource Manager-Vorlagen

Wichtig

Das Feature „Firewall“ wird im Basic-Tarif nicht unterstützt.

Mithilfe der folgenden Resource Manager-Vorlage können Sie einem vorhandenen Event Hubs-Namespace eine IP-Filterregel hinzufügen.

ipMask in der Vorlage ist eine einzelne IPv4-Adresse oder ein Block von IP-Adressen in CIDR-Notation. In CIDR-Notation steht beispielsweise 70.37.104.0/24 für die 256 IPv4-Adressen von 70.37.104.0 bis 70.37.104.255. „24“ gibt dabei die Anzahl signifikanter Präfixbits für den Bereich an.

Hinweis

Der Standardwert von defaultAction ist Allow. Legen Sie beim Hinzufügen von VNet- oder Firewallregeln defaultAction auf Deny fest.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "namespace_name": {
            "defaultValue": "contosoehub1333",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.EventHub/namespaces",
            "apiVersion": "2022-01-01-preview",
            "name": "[parameters('namespace_name')]",
            "location": "East US",
            "sku": {
                "name": "Standard",
                "tier": "Standard",
                "capacity": 1
            },
            "properties": {
                "minimumTlsVersion": "1.2",
                "publicNetworkAccess": "Enabled",
                "disableLocalAuth": false,
                "zoneRedundant": true,
                "isAutoInflateEnabled": false,
                "maximumThroughputUnits": 0,
                "kafkaEnabled": true
            }
        },
        {
            "type": "Microsoft.EventHub/namespaces/authorizationrules",
            "apiVersion": "2022-01-01-preview",
            "name": "[concat(parameters('namespace_name'), '/RootManageSharedAccessKey')]",
            "location": "eastus",
            "dependsOn": [
                "[resourceId('Microsoft.EventHub/namespaces', parameters('namespace_name'))]"
            ],
            "properties": {
                "rights": [
                    "Listen",
                    "Manage",
                    "Send"
                ]
            }
        },
        {
            "type": "Microsoft.EventHub/namespaces/networkRuleSets",
            "apiVersion": "2022-01-01-preview",
            "name": "[concat(parameters('namespace_name'), '/default')]",
            "location": "East US",
            "dependsOn": [
                "[resourceId('Microsoft.EventHub/namespaces', parameters('namespace_name'))]"
            ],
            "properties": {
                "publicNetworkAccess": "Enabled",
                "defaultAction": "Deny",
                "virtualNetworkRules": [],
                "ipRules": [
                    {
                        "ipMask": "10.1.1.1",
                        "action": "Allow"
                    },
                    {
                        "ipMask": "11.0.0.0/24",
                        "action": "Allow"
                    },
                    {
                        "ipMask": "172.72.157.204",
                        "action": "Allow"
                    }
                ]
            }
        }
    ]
}

Gehen Sie zum Bereitstellen der Vorlage gemäß den Anweisungen für Azure Resource Manager vor.

Wichtig

Wenn keine IP- und VNET-Regeln vorliegen, fließt der gesamte Datenverkehr auch dann in den Namespace, wenn Sie für defaultAction den Wert deny festlegen. Der Zugriff auf den Namespace erfolgt (mithilfe des Zugriffsschlüssels) über das öffentliche Internet. Geben Sie mindestens eine IP-Regel oder eine VNET-Regel für den Namespace an, um nur Datenverkehr von den angegebenen IP-Adressen oder dem Subnetz eines virtuellen Netzwerks zuzulassen.

Mithilfe der Azure-Befehlszeilenschnittstelle

Verwenden Sie az eventhubs namespace network-rule-set-Befehle zum Hinzufügen, Auflisten, Aktualisieren und Entfernen, um IP-Firewallregeln für einen Event Hubs-Namespace zu verwalten.

Mithilfe von Azure PowerShell

Verwenden Sie das Cmdlet Set-AzEventHubNetworkRuleSet, um eine oder mehrere IP-Firewallregeln hinzuzufügen. Ein Beispiel aus dem Artikel:

$ipRule1 = New-AzEventHubIPRuleConfig -IPMask 2.2.2.2 -Action Allow
$ipRule2 = New-AzEventHubIPRuleConfig -IPMask 3.3.3.3 -Action Allow
$virtualNetworkRule1 = New-AzEventHubVirtualNetworkRuleConfig -SubnetId '/subscriptions/subscriptionId/resourcegroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/default'
$networkRuleSet = Get-AzEventHubNetworkRuleSet -ResourceGroupName myResourceGroup -NamespaceName myNamespace
$networkRuleSet.IPRule += $ipRule1
$networkRuleSet.IPRule += $ipRule2
$networkRuleSet.VirtualNetworkRule += $virtualNetworkRule1
Set-AzEventHubNetworkRuleSet -ResourceGroupName myResourceGroup -NamespaceName myNamespace -IPRule $ipRule1,$ipRule2 -VirtualNetworkRule $virtualNetworkRule1,$virtualNetworkRule2,$virtualNetworkRule3

Standardaktion und Zugriff auf öffentliche Netzwerke

REST-API

Der Standardwert der Eigenschaft defaultAction war Deny (für API-Versionen bis einschließlich 2021-01-01-preview). Die Verweigerungsregel wird jedoch nur erzwungen, wenn Sie IP-Filter oder virtuelle Netzwerkregeln festlegen. Das heißt, wenn Sie keine IP-Filter oder Regeln für virtuelle Netzwerke verwendet haben, wird es als Allow behandelt.

Ab der API-Version 2021-06-01-preview hat die Eigenschaft defaultAction den Standardwert Allow, um die dienstseitige Erzwingung korrekt widerzuspiegeln. Wenn die Standardaktion auf Deny festgelegt ist, werden IP-Filter und virtuelle Netzwerkregeln erzwungen. Wenn die Standardaktion auf Allow festgelegt ist, werden IP-Filter und virtuelle Netzwerkregeln nicht erzwungen. Der Dienst speichert die Regeln, wenn Sie sie deaktivieren und dann wieder aktivieren.

Mit der API-Version 2021-06-01-preview wird auch eine neue Eigenschaft namens publicNetworkAccess eingeführt. Wenn sie auf Disabled festgelegt ist, sind Vorgänge auf private Verbindungen beschränkt. Ist sie auf Enabled festgelegt, sind Vorgänge über das öffentliche Internet zulässig.

Weitere Informationen zu diesen Eigenschaften finden Sie unter Namespaces: Netzwerkregelsatz: Erstellen oder Aktualisieren des Netzwerkregelsatzes sowie unter Verbindungen mit privaten Endpunkten: Erstellen oder Aktualisieren.

Hinweis

Keine der obigen Einstellungen umgeht die Validierung von Ansprüchen per SAS- oder Microsoft Entra-Authentifizierung. Die Authentifizierungsüberprüfung wird immer erst im Anschluss an die durch die Einstellungen defaultAction, publicNetworkAccess und privateEndpointConnections konfigurierten Netzwerküberprüfungen ausgeführt.

Azure-Portal

Das Azure-Portal verwendet immer die neueste API-Version, um Eigenschaften abzurufen und festzulegen. Wenn Sie Ihren Namespace mit einer Version bis einschließlich 2021-01-01-preview konfiguriert und dabei defaultAction auf Deny festgelegt sowie keine IP-Filter und virtuelle Netzwerkregeln angegeben haben, wurde früher im Portal auf der Seite Netzwerk Ihres Namespace die Option Ausgewählte Netzwerke ausgewählt. Nun wird die Option Alle Netzwerke überprüft.

Screenshot that shows the Public access page with the All networks option selected.

Nächste Schritte

Informationen zum Einschränken des Event Hubs-Zugriffs für virtuelle Azure-Netzwerke finden Sie unter dem folgenden Link: