Zulassen des Zugriffs auf den Azure Service Bus-Namespace von bestimmten IP-Adressen oder -Adressbereichen

Standardmäßig kann über das Internet auf Service Bus-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-Adressen oder IPv4-Adressbereichen in der CIDR-Notation (Classless Inter-Domain Routing) weiter einschränken.

Diese Funktion ist in Szenarien hilfreich, in denen Azure Service Bus nur von bestimmten bekannten Websites aus zugänglich sein soll. Mithilfe von Firewallregeln können Sie Regeln konfigurieren, um Datenverkehr von bestimmten IPv4-Adressen zuzulassen. Wenn Sie Service Bus mit Azure ExpressRoute verwenden, können Sie beispielsweise eine Firewallregel erstellen, um nur Datenverkehr von den IP-Adressen Ihrer lokalen Infrastruktur oder von Adressen eines unternehmenseigenen NAT-Gateways zuzulassen.

IP-Firewallregeln

Die IP-Firewallregeln werden auf der Service Bus-Namespaceebene angewendet. Daher gelten die Regeln für alle Clientverbindungen mit einem beliebigen unterstützten Protokoll (AMQP (5671) und HTTPS (443)). Jeder Verbindungsversuch über eine IP-Adresse, die nicht mit einer IP-Zulassungsregel im Service Bus-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

  • Firewalls und virtuelle Netzwerke werden nur im Tarif Premium von Service Bus unterstützt. Wenn ein Upgrade auf den Tarif Premium nicht möglich ist, wird empfohlen, dass Sie die Sicherheit des SAS-Tokens (Shared Access Signature) gewährleisten und es nur für autorisierte Benutzer freigeben. Weitere Informationen zur SAS-Authentifizierung finden Sie unter Authentifizierung und Autorisierung.

  • 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.

  • Durch Implementieren von Firewallregeln kann verhindert werden, dass andere Azure-Dienste mit Service Bus interagieren. Als Ausnahme können Sie bestimmten vertrauenswürdigen Diensten selbst dann den Zugriff auf Service Bus-Ressourcen erlauben, wenn die IP-Filterung aktiviert ist. Eine Liste der vertrauenswürdigen Dienste finden Sie unter Vertrauenswürdige Dienste.

    Die folgenden Microsoft-Dienste müssen sich in einem virtuellen Netzwerk befinden:

    • Azure App Service
    • Azure-Funktionen

Verwenden des Azure-Portals

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

  1. Navigieren Sie im Azure-Portal zu Ihrem Service Bus-Namespace.

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

    Hinweis

    Die Registerkarte Netzwerk wird nur für Namespaces vom Typ Premium angezeigt.

  3. Auf der Seite Netzwerk können Sie für Öffentlicher Netzwerkzugriff eine der drei folgenden Optionen festlegen. Wählen Sie die Option Ausgewählte Netzwerke, um Zugriff nur über bestimmte IP-Adressen zuzulassen.

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

      Networking page - public access tab - public network access is disabled.

    • 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.

      Networking page with the selected networks option selected.

    • 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 Service Bus 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.

      Screenshot of the Azure portal Networking page. The option to allow access from All networks is selected on the Firewalls and virtual networks tab.

  4. Um den Zugriff nur von bestimmten IP-Adressen aus zuzulassen, wählen Sie die Option Ausgewählte Netzwerke aus, sofern sie noch nicht ausgewählt wurde. Gehen Sie im Abschnitt Firewall wie folgt vor:

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

    2. Geben Sie für Adressbereich eine bestimmte IPv4-Adresse oder einen Bereich von IPv4-Adressen in der CIDR-Notation ein.

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

      Warnung

      Wenn Sie die Option Ausgewählte Netzwerke auswählen und auf dieser Seite nicht mindestens eine IP-Firewallregel oder ein virtuelles Netzwerk hinzufügen, kann (mit dem Zugriffsschlüssel) über das öffentliche Internet auf den Namespace zugegriffen werden.

      Screenshot of the Azure portal Networking page. The option to allow access from Selected networks is selected and the Firewall section is highlighted.

  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 Zugriff auf Ihre Service Bus-Ressourcen gewährt.

Vertrauenswürdiger Dienst Unterstützte Verwendungsszenarien
Azure Event Grid Ermöglicht Azure Event Grid das Senden von Ereignissen an Warteschlangen oder Themen in Ihrem Service Bus-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 Service Bus-Datenabsender“ für den Service Bus-Namespace
  • Konfigurieren Sie dann das Ereignisabonnement, das eine Service Bus-Warteschlange oder ein Thema 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 API Management

Der API Management-Dienst ermöglicht Ihnen das Senden von Nachrichten an eine Service Bus-Warteschlange bzw. ein -Thema im Service Bus-Namespace.

Azure IoT Central

Ermöglicht IoT Central das Exportieren von Daten in Service Bus-Warteschlangen oder -Themen in Ihrem Service Bus-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:

  • Aktivieren der systemseitig zugewiesenen Identität für Ihre IoT Central-Anwendung
  • Fügen Sie der Rolle Azure Service Bus-Datensender für den Service Bus-Namespace die Identität hinzu.
  • Konfigurieren Sie dann das Service Bus-Exportziel in Ihrer IoT Central-Anwendung, um die identitätsbasierte Authentifizierung zu verwenden.
Azure IoT Hub Ermöglicht einem IoT Hub das Senden von Nachrichten an Warteschlangen oder Themen in Ihrem Service Bus-Namespace. Sie müssen außerdem die folgenden Schritte ausführen:

Verwenden von Resource Manager-Vorlagen

In diesem Abschnitt wird eine Azure Resource Manager-Vorlage verwendet, die einem vorhandenen Service Bus-Namespace ein virtuelles Netzwerk und eine Firewallregel hinzufügt.

ipMask 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": {
        "serviceBusNamespaceName": {
            "defaultValue": "contososbusns",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.ServiceBus/namespaces",
            "apiVersion": "2021-06-01-preview",
            "name": "[parameters('serviceBusNamespaceName')]",
            "location": "East US",
            "sku": {
                "name": "Premium",
                "tier": "Premium",
                "capacity": 1
            },
            "properties": {
                "disableLocalAuth": false,
                "zoneRedundant": true
            }
        },
        {
            "type": "Microsoft.ServiceBus/namespaces/networkRuleSets",
            "apiVersion": "2021-06-01-preview",
            "name": "[concat(parameters('serviceBusNamespaceName'), '/default')]",
            "location": "East US",
            "dependsOn": [
                "[resourceId('Microsoft.ServiceBus/namespaces', parameters('serviceBusNamespaceName'))]"
            ],
            "properties": {
                "publicNetworkAccess": "Enabled",
                "defaultAction": "Allow",
                "virtualNetworkRules": [],
                "ipRules": [
                    {
                        "ipMask":"10.1.1.1",
                        "action":"Allow"
                    },
                    {
                        "ipMask":"11.0.0.0/24",
                        "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.

Standardaktion und Zugriff auf das öffentliche Netzwerk

REST-API

Der Standardwert der Eigenschaft defaultAction war Deny (für API-Versionen bis einschließlich 2021-01-01-preview). Die Ablehnungsregel wird jedoch nur erzwungen, wenn Sie IP-Filter oder VNet-Regeln (virtuelles Netzwerk) festlegen. Wenn Sie über keine IP-Filter oder VNet-Regeln verfügen, wird sie 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 VNet-Regeln erzwungen. Ist die Standardaktion auf Allow festgelegt, werden IP-Filter und VNet-Regeln 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 Azure AD-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 zuvor mit einer Version bis einschließlich 2021-01-01-preview konfiguriert und dabei defaultAction auf Deny festgelegt sowie keine IP-Filter und VNet-Regeln angegeben haben, hätte das Portal in der Vergangenheit Ausgewählte Netzwerke auf der Seite Netzwerk Ihres Namespace überprüft. Nun wird die Option Alle Netzwerke überprüft.

Screenshot of the Azure portal Networking page. The option to allow access from All networks is selected on the Firewalls and virtual networks tab.

Nächste Schritte

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