Toegang tot Azure Event Hubs-naamruimten vanuit specifieke virtuele netwerken toestaan

De integratie van Event Hubs met VNet-service-eindpunten (Virtual Network) maakt beveiligde toegang tot berichtenmogelijkheden mogelijk van workloads zoals virtuele machines die zijn gebonden aan virtuele netwerken, waarbij het netwerkverkeerspad aan beide uiteinden wordt beveiligd.

Zodra deze is geconfigureerd om te zijn gebonden aan ten minste één service-eindpunt voor het subnet van het virtuele netwerk, accepteert de respectieve Event Hubs-naamruimte geen verkeer meer vanaf elke locatie, maar van geautoriseerde subnetten in virtuele netwerken. Vanuit het perspectief van het virtuele netwerk configureert het binden van een Event Hubs-naamruimte aan een service-eindpunt een geïsoleerde netwerktunnel van het subnet van het virtuele netwerk naar de berichtenservice.

Het resultaat is een privé- en geïsoleerde relatie tussen de workloads die zijn gebonden aan het subnet en de respectieve Event Hubs-naamruimte, ondanks het waarneembare netwerkadres van het berichtenservice-eindpunt dat zich in een openbaar IP-bereik bevindt. Er is een uitzondering op dit gedrag. Als u een service-eindpunt inschakelt, wordt standaard de denyall regel ingeschakeld in de IP-firewall die is gekoppeld aan het virtuele netwerk. U kunt specifieke IP-adressen toevoegen in de IP-firewall om toegang tot het openbare Event Hubs-eindpunt in te schakelen.

Belangrijke punten

  • Deze functie wordt niet ondersteund in de basic-laag .
  • Als u virtuele netwerken inschakelt voor uw Event Hubs-naamruimte, worden binnenkomende aanvragen standaard geblokkeerd, tenzij aanvragen afkomstig zijn van een service die werkt vanuit toegestane virtuele netwerken. Aanvragen die worden geblokkeerd, zijn die van andere Azure-services, van Azure Portal, van logboekregistratie en metrische gegevens, enzovoort. Als uitzondering kunt u toegang tot Event Hubs-resources van bepaalde vertrouwde services toestaan, zelfs wanneer virtuele netwerken zijn ingeschakeld. Zie Vertrouwde services voor een lijst met vertrouwde services.
  • Geef ten minste één IP-regel of regel voor het virtuele netwerk op voor de naamruimte om alleen verkeer van de opgegeven IP-adressen of subnetten van een virtueel netwerk toe te staan. Als er geen IP- en virtuele netwerkregels zijn, kan de naamruimte worden geopend via het openbare internet (met behulp van de toegangssleutel).

Geavanceerde beveiligingsscenario's ingeschakeld door VNet-integratie

Oplossingen waarvoor een strakke en gecompartimentaliseerde beveiliging is vereist, en waarbij subnetten van virtuele netwerken de segmentatie tussen de gecompartimenteerde services bieden, moeten er nog steeds communicatiepaden tussen services in die compartimenten worden gebruikt.

Elke directe IP-route tussen de compartimenten, met inbegrip van die met HTTPS via TCP/IP, draagt het risico op misbruik van beveiligingsproblemen van de netwerklaag op. Berichtenservices bieden geïsoleerde communicatiepaden, waarbij berichten zelfs naar schijf worden geschreven tijdens de overgang tussen partijen. Workloads in twee afzonderlijke virtuele netwerken die beide aan hetzelfde Event Hubs-exemplaar zijn gebonden, kunnen efficiënt en betrouwbaar communiceren via berichten, terwijl de respectieve integriteit van de netwerkisolatiegrens behouden blijft.

Dat betekent dat uw beveiligingsgevoelige cloudoplossingen niet alleen toegang krijgen tot toonaangevende betrouwbare en schaalbare asynchrone berichtenmogelijkheden van Azure, maar ze kunnen nu berichten gebruiken om communicatiepaden te maken tussen beveiligde oplossingscompartimenten die inherent veiliger zijn dan wat mogelijk is met elke peer-to-peer-communicatiemodus, waaronder HTTPS en andere tls-beveiligde socketprotocollen.

Event Hubs binden aan virtuele netwerken

Regels voor virtuele netwerken zijn de firewallbeveiligingsfunctie waarmee wordt bepaald of uw Azure Event Hubs-naamruimte verbindingen van een bepaald subnet van een virtueel netwerk accepteert.

Het binden van een Event Hubs-naamruimte aan een virtueel netwerk is een proces in twee stappen. U moet eerst een service-eindpunt voor een virtueel netwerk maken op het subnet van een virtueel netwerk en dit inschakelen voor Microsoft.EventHub, zoals wordt uitgelegd in het overzichtsartikel van het service-eindpunt. Zodra u het service-eindpunt hebt toegevoegd, verbindt u de Event Hubs-naamruimte met een regel voor een virtueel netwerk.

De regel voor het virtuele netwerk is een koppeling van de Event Hubs-naamruimte met een subnet van een virtueel netwerk. Hoewel de regel bestaat, krijgen alle workloads die zijn gebonden aan het subnet toegang tot de Event Hubs-naamruimte. Event Hubs zelf brengt nooit uitgaande verbindingen tot stand, hoeft geen toegang te krijgen en krijgt daarom nooit toegang tot uw subnet door deze regel in te schakelen.

Azure Portal gebruiken

Wanneer u een naamruimte maakt, kunt u alleen openbare (van alle netwerken) of alleen privétoegang (alleen via privé-eindpunten) tot de naamruimte toestaan. Zodra de naamruimte is gemaakt, kunt u toegang vanaf specifieke IP-adressen of van specifieke virtuele netwerken toestaan (met behulp van netwerkservice-eindpunten).

Openbare toegang configureren bij het maken van een naamruimte

Als u openbare toegang wilt inschakelen, selecteert u Openbare toegang op de pagina Netwerken van de wizard Naamruimte maken.

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

Nadat u de naamruimte hebt gemaakt, selecteert u Netwerken in het linkermenu van de Service Bus-naamruimtepagina . U ziet dat de optie Alle netwerken is geselecteerd. U kunt de optie Geselecteerde netwerken selecteren en toegang toestaan vanaf specifieke IP-adressen of specifieke virtuele netwerken. In de volgende sectie vindt u meer informatie over het opgeven van de netwerken waaruit de toegang is toegestaan.

Geselecteerde netwerken configureren voor een bestaande naamruimte

In deze sectie wordt beschreven hoe u Azure Portal gebruikt om een service-eindpunt voor een virtueel netwerk toe te voegen. Als u de toegang wilt beperken, moet u het service-eindpunt van het virtuele netwerk voor deze Event Hubs-naamruimte integreren.

  1. Navigeer naar uw Event Hubs-naamruimte in Azure Portal.

  2. Selecteer Netwerken onder Instellingen in het linkermenu.

  3. Op de pagina Netwerken kunt u voor openbare netwerktoegang een van de drie volgende opties instellen. Kies de optie Geselecteerde netwerken om alleen toegang toe te staan vanuit specifieke virtuele netwerken.

    Hier vindt u meer informatie over opties die beschikbaar zijn op de pagina Openbare netwerktoegang :

    • Uitgeschakeld. Met deze optie wordt openbare toegang tot de naamruimte uitgeschakeld. De naamruimte is alleen toegankelijk via privé-eindpunten.

    • Geselecteerde netwerken. Met deze optie is openbare toegang tot de naamruimte mogelijk met behulp van een toegangssleutel uit geselecteerde netwerken.

      Belangrijk

      Als u Geselecteerde netwerken kiest, voegt u ten minste één IP-firewallregel of een virtueel netwerk toe dat toegang heeft tot de naamruimte. Kies Uitgeschakeld als u alleen al het verkeer naar deze naamruimte wilt beperken via privé-eindpunten .

    • Alle netwerken (standaard). Met deze optie kunt u openbare toegang vanuit alle netwerken met behulp van een toegangssleutel inschakelen. Als u de optie Alle netwerken selecteert, accepteert de Event Hub verbindingen vanaf elk IP-adres (met behulp van de toegangssleutel). Deze instelling is gelijk aan een regel die het IP-adresbereik 0.0.0.0/0 accepteert.

  4. Als u de toegang tot specifieke netwerken wilt beperken, kiest u de optie Geselecteerde netwerken boven aan de pagina als deze nog niet is geselecteerd.

  5. Selecteer +Bestaand virtueel netwerk toevoegen* in de sectie Virtuele netwerken van de pagina. Selecteer + Nieuw virtueel netwerk maken als u een nieuw VNet wilt maken.

    Selection of Add existing virtual network menu item.

    Belangrijk

    Als u Geselecteerde netwerken kiest, voegt u ten minste één IP-firewallregel of een virtueel netwerk toe dat toegang heeft tot de naamruimte. Kies Uitgeschakeld als u alleen al het verkeer naar deze naamruimte wilt beperken via privé-eindpunten .

  6. Selecteer het virtuele netwerk in de lijst met virtuele netwerken en kies vervolgens het subnet. U moet het service-eindpunt inschakelen voordat u het virtuele netwerk aan de lijst toevoegt. Als het service-eindpunt niet is ingeschakeld, wordt u door de portal gevraagd het in te schakelen.

    Image showing the selection of a subnet.

  7. Als het goed is, ziet u het volgende bericht nadat het service-eindpunt voor het subnet is ingeschakeld voor Microsoft.EventHub. Selecteer Toevoegen onder aan de pagina om het netwerk toe te voegen.

    Image showing the selection of a subnet and enabling an endpoint.

    Notitie

    Als u het service-eindpunt niet kunt inschakelen, kunt u het ontbrekende service-eindpunt van het virtuele netwerk negeren met behulp van de Resource Manager-sjabloon. Deze functionaliteit is niet beschikbaar in de portal.

  8. Geef op of u vertrouwde Microsoft-services wilt toestaan om deze firewall te omzeilen. Zie Vertrouwde Microsoft-services voor meer informatie.

  9. Selecteer Opslaan op de werkbalk om de instellingen op te slaan. Wacht enkele minuten totdat de bevestiging wordt weergegeven in de portalmeldingen.

    Image showing the saving of virtual network.

    Notitie

    Als u de toegang tot specifieke IP-adressen of bereiken wilt beperken, raadpleegt u Toegang vanaf specifieke IP-adressen of bereiken toestaan.

Vertrouwde Microsoft-services

Wanneer u de instelling Vertrouwde Microsoft-services toestaan om deze firewallinstelling te omzeilen inschakelt, krijgen de volgende services binnen dezelfde tenant toegang tot uw Event Hubs-resources.

Vertrouwde service Ondersteunde gebruiksscenario's
Azure Event Grid Hiermee kan Azure Event Grid gebeurtenissen verzenden naar Event Hubs in uw Event Hubs-naamruimte. U moet ook de volgende stappen uitvoeren:
  • Door het systeem toegewezen identiteit inschakelen voor een onderwerp of een domein
  • De identiteit toevoegen aan de rol Azure Event Hubs-gegevenszender in de Event Hubs-naamruimte
  • Configureer vervolgens het gebeurtenisabonnement dat gebruikmaakt van een Event Hub als eindpunt om de door het systeem toegewezen identiteit te gebruiken.

Zie Gebeurtenislevering met een beheerde identiteit voor meer informatie

Azure Stream Analytics Hiermee kan een Azure Stream Analytics-taak gegevens lezen uit (invoer) of gegevens schrijven naar (uitvoer) Event Hubs in uw Event Hubs-naamruimte.

Belangrijk: De Stream Analytics-taak moet worden geconfigureerd voor het gebruik van een beheerde identiteit voor toegang tot de Event Hub. Zie Beheerde identiteiten gebruiken voor toegang tot de Event Hub vanuit een Azure Stream Analytics-taak (preview) voor meer informatie.

Azure IoT Hub Hiermee kan IoT Hub berichten verzenden naar Event Hubs in uw Event Hubs-naamruimte. U moet ook de volgende stappen uitvoeren:
  • Door het systeem toegewezen identiteit inschakelen voor uw IoT-hub
  • Voeg de identiteit toe aan de rol Azure Event Hubs-gegevenszender in de Event Hubs-naamruimte.
  • Configureer vervolgens de IoT Hub die gebruikmaakt van een Event Hub als een aangepast eindpunt om de verificatie op basis van identiteiten te gebruiken.
Azure API Management

Met de API Management-service kunt u gebeurtenissen verzenden naar een Event Hub in uw Event Hubs-naamruimte.

  • U kunt aangepaste werkstromen activeren door gebeurtenissen naar uw Event Hub te verzenden wanneer een API wordt aangeroepen met behulp van het beleid voor verzenden-aanvragen.
  • U kunt een Event Hub ook behandelen als uw back-end in een API. Zie Verifiëren met behulp van een beheerde identiteit voor toegang tot een Event Hub voor een voorbeeldbeleid. U moet ook de volgende stappen uitvoeren:
    1. Schakel door het systeem toegewezen identiteit in op het API Management-exemplaar. Zie Beheerde identiteiten gebruiken in Azure API Management voor instructies.
    2. De identiteit toevoegen aan de rol Azure Event Hubs-gegevenszender in de Event Hubs-naamruimte
Azure Monitor (diagnostische Instellingen en actiegroepen) Hiermee kan Azure Monitor diagnostische gegevens en waarschuwingsmeldingen verzenden naar Event Hubs in uw Event Hubs-naamruimte. Azure Monitor kan lezen vanuit de Event Hub en ook gegevens schrijven naar de Event Hub.
Azure Synapse Hiermee kan Azure Synapse verbinding maken met de Event Hub met behulp van de beheerde identiteit van de Synapse-werkruimte. Voeg de rol Azure Event Hubs-gegevenszender, ontvanger of eigenaar toe aan de identiteit in de Event Hubs-naamruimte.
Azure Data Explorer Hiermee kan Azure Data Explorer gebeurtenissen ontvangen van de Event Hub met behulp van de beheerde identiteit van het cluster. U moet de volgende stappen uitvoeren:  
Azure IoT Central

Hiermee kan IoT Central gegevens exporteren naar Event Hubs in uw Event Hubs-naamruimte. U moet ook de volgende stappen uitvoeren:

  • Schakel door het systeem toegewezen identiteit in voor uw IoT Central-toepassing.
  • Voeg de identiteit toe aan de rol Azure Event Hubs-gegevenszender in de Event Hubs-naamruimte.
  • Configureer vervolgens de Event Hubs-exportbestemming in uw IoT Central-toepassing om verificatie op basis van identiteit te gebruiken.
Azure Health Data Services Hiermee kunnen Healthcare API's IoT-connector medische apparaatgegevens opnemen uit uw Event Hubs-naamruimte en gegevens behouden in uw geconfigureerde FHIR-service® (Fast Healthcare Interoperability Resources). De IoT-connector moet worden geconfigureerd voor het gebruik van een beheerde identiteit voor toegang tot de Event Hub. Zie Aan de slag met de IoT-connector - Azure Healthcare-API's voor meer informatie.
Azure Digital Twins Hiermee kunnen Azure Digital Twins gegevens uitgaan naar Event Hubs in uw Event Hubs-naamruimte. U moet ook de volgende stappen uitvoeren:

De andere vertrouwde services voor Azure Event Hubs vindt u hieronder:

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

Resource Manager-sjabloon gebruiken

Met de volgende Resource Manager-voorbeeldsjabloon wordt een regel voor een virtueel netwerk toegevoegd aan een bestaande Event Hubs-naamruimte. Voor de netwerkregel wordt de id van een subnet in een virtueel netwerk opgegeven.

De id is een volledig gekwalificeerde Resource Manager-pad voor het subnet van het virtuele netwerk. Bijvoorbeeld /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default voor het standaardsubnet van een virtueel netwerk.

Wanneer u regels voor virtuele netwerken of firewalls toevoegt, stelt u de waarde van in defaultAction op Deny.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
      "eventhubNamespaceName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Event Hubs namespace"
        }
      },
      "virtualNetworkName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Rule"
        }
      },
      "subnetName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Sub Net"
        }
      },
      "location": {
        "type": "string",
        "metadata": {
          "description": "Location for Namespace"
        }
      }
    },
    "variables": {
      "namespaceNetworkRuleSetName": "[concat(parameters('eventhubNamespaceName'), concat('/', 'default'))]",
      "subNetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets/', parameters('virtualNetworkName'), parameters('subnetName'))]"
    },
    "resources": [
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[parameters('eventhubNamespaceName')]",
        "type": "Microsoft.EventHub/namespaces",
        "location": "[parameters('location')]",
        "sku": {
          "name": "Standard",
          "tier": "Standard"
        },
        "properties": { }
      },
      {
        "apiVersion": "2017-09-01",
        "name": "[parameters('virtualNetworkName')]",
        "location": "[parameters('location')]",
        "type": "Microsoft.Network/virtualNetworks",
        "properties": {
          "addressSpace": {
            "addressPrefixes": [
              "10.0.0.0/23"
            ]
          },
          "subnets": [
            {
              "name": "[parameters('subnetName')]",
              "properties": {
                "addressPrefix": "10.0.0.0/23",
                "serviceEndpoints": [
                  {
                    "service": "Microsoft.EventHub"
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[variables('namespaceNetworkRuleSetName')]",
        "type": "Microsoft.EventHub/namespaces/networkruleset",
        "dependsOn": [
          "[concat('Microsoft.EventHub/namespaces/', parameters('eventhubNamespaceName'))]"
        ],
        "properties": {
          "publicNetworkAccess": "Enabled",
          "defaultAction": "Deny",
          "virtualNetworkRules": 
          [
            {
              "subnet": {
                "id": "[variables('subNetId')]"
              },
              "ignoreMissingVnetServiceEndpoint": false
            }
          ],
          "ipRules":[],
          "trustedServiceAccessEnabled": false
        }
      }
    ],
    "outputs": { }
  }

Volg de instructies voor Azure Resource Manager om de sjabloon te implementeren.

Belangrijk

Als er geen IP- en virtuele-netwerkregels zijn, stroomt al het verkeer naar de naamruimte, zelfs als u de defaultAction naamruimte instelt op deny. De naamruimte kan worden geopend via het openbare internet (met behulp van de toegangssleutel). Geef ten minste één IP-regel of regel voor het virtuele netwerk op voor de naamruimte om alleen verkeer van de opgegeven IP-adressen of subnetten van een virtueel netwerk toe te staan.

Azure CLI gebruiken

Gebruik az eventhubs namespace network-rule-set opdrachten voor toevoegen, weergeven, bijwerken en verwijderen om regels voor virtuele netwerken voor een Service Bus-naamruimte te beheren.

Azure PowerShell gebruiken

Gebruik de volgende Azure PowerShell-opdrachten om netwerkregels voor een Service Bus-naamruimte toe te voegen, weer te geven, te verwijderen, bij te werken en te verwijderen.

standaardactie en openbare netwerktoegang

REST-API

De standaardwaarde van de defaultAction eigenschap was Deny voor API-versie 2021-01-01-preview en eerder. De regel voor weigeren wordt echter niet afgedwongen, tenzij u IP-filters of VNet-regels (Virtual Network) instelt. Als u geen IP-filters of VNet-regels hebt, wordt dit beschouwd als Allow.

Vanaf API-versie 2021-06-01-preview is Allowde standaardwaarde van de defaultAction eigenschap , om de afdwinging aan de servicezijde nauwkeurig weer te geven. Als de standaardactie is ingesteld op Deny, worden IP-filters en VNet-regels afgedwongen. Als de standaardactie is ingesteld op Allow, worden IP-filters en VNet-regels niet afgedwongen. De service onthoudt de regels wanneer u ze uitschakelt en weer inschakelt.

De API-versie 2021-06-01-preview introduceert ook een nieuwe eigenschap met de naam publicNetworkAccess. Als deze optie is ingesteld Disabled, worden bewerkingen alleen beperkt tot privékoppelingen. Als deze optie is ingesteld Enabled, zijn bewerkingen toegestaan via het openbare internet.

Zie Netwerkregelset maken of bijwerken en privé-eindpunten maken of bijwerken Verbinding maken ions voor meer informatie over deze eigenschappen.

Notitie

Geen van de bovenstaande instellingen omzeilt de validatie van claims via SAS- of Microsoft Entra-verificatie. De verificatiecontrole wordt altijd uitgevoerd nadat de service de netwerkcontroles valideert die zijn geconfigureerd door defaultAction, publicNetworkAccessinstellingen privateEndpointConnections .

Azure Portal

Azure Portal gebruikt altijd de nieuwste API-versie om eigenschappen op te halen en in te stellen. Als u uw naamruimte eerder had geconfigureerd met 2021-01-01-preview en eerder ingesteld op DenydefaultAction en nul IP-filters en VNet-regels hebt opgegeven, zou de portal eerder geselecteerde netwerken hebben gecontroleerd op de netwerkpagina van uw naamruimte. Nu wordt de optie Alle netwerken gecontroleerd.

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

Volgende stappen

Zie de volgende koppelingen voor meer informatie over virtuele netwerken: