Toegang tot Azure Event Hubs-naamruimten via privé-eindpunten toestaan

met Azure Private Link Service hebt u toegang tot Azure-services (bijvoorbeeld Azure Event Hubs, Azure Storage en Azure Cosmos DB) en door Azure gehoste klant-/partnerservices via een privé-eindpunt in uw virtuele netwerk.

Een privé-eindpunt is een netwerkinterface waarmee u privé en veilig verbinding maakt met een service die door Azure Private Link mogelijk wordt gemaakt. Het privé-eindpunt maakt gebruik van een privé-IP-adres van uw virtuele netwerk, waardoor de service effectief in uw virtuele netwerk wordt gebracht. Al het verkeer naar de service kan worden gerouteerd via het privé-eindpunt, zodat er geen gateways, NAT-apparaten, ExpressRoute of VPN-verbindingen of openbare IP-adressen nodig zijn. Verkeer tussen uw virtuele netwerk en de services wordt via het backbonenetwerk van Microsoft geleid, waarmee de risico's van het openbare internet worden vermeden. U kunt verbinding maken met een exemplaar van een Azure-resource, zodat u het hoogste granulariteit krijgt in toegangsbeheer.

Zie Wat is een Azure Private Link? voor meer informatie.

Belangrijke punten

  • Deze functie wordt niet ondersteund in de Basic-laag .
  • Het inschakelen van privé-eindpunten kan voorkomen dat andere Azure-services communiceren met Event Hubs. Aanvragen die zijn geblokkeerd, zijn onder andere aanvragen van andere Azure-services, van de Azure Portal, van services voor logboekregistratie en metrische gegevens, enzovoort. Als uitzondering kunt u toegang verlenen tot Event Hubs-resources vanuit bepaalde vertrouwde services , zelfs wanneer privé-eindpunten 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 het subnet van een virtueel netwerk toe te staan. Als er geen IP- en virtuele netwerkregels zijn, is de naamruimte toegankelijk via het openbare internet (met behulp van de toegangssleutel).

Een privé-eindpunt toevoegen met behulp van Azure Portal

Vereisten

Als u een Event Hubs-naamruimte wilt integreren met Azure Private Link, hebt u de volgende entiteiten of machtigingen nodig:

  • Een Event Hubs-naamruimte.
  • Een Azure Virtual Network.
  • Een subnet binnen het virtueel netwerk. U kunt het standaardsubnet gebruiken.
  • Eigenaars- of inzendermachtigingen voor zowel de naamruimte als het virtuele netwerk.

Uw privé-eindpunt en het virtueel netwerk moeten zich in dezelfde regio bevinden. Wanneer u een regio voor het privé-eindpunt selecteert met behulp van de portal, worden er automatisch alleen virtuele netwerken gefilterd die zich in die regio bevinden. Uw naamruimte kan zich in een andere regio bevinden.

Uw privé-eindpunt maakt gebruik van een privé IP-adres in uw virtueel netwerk.

Persoonlijke toegang configureren bij het maken van een naamruimte

Wanneer u een naamruimte maakt, kunt u alleen openbare (van alle netwerken) of alleen privétoegang (alleen via privé-eindpunten) tot de naamruimte toestaan.

Als u de optie Persoonlijke toegang selecteert op de pagina Netwerken van de wizard naamruimte maken, kunt u een privé-eindpunt op de pagina toevoegen door de knop + Privé-eindpunt te selecteren. Zie de volgende sectie voor de gedetailleerde stappen voor het toevoegen van een privé-eindpunt.

Schermopname van de pagina Netwerken van de wizard Naamruimte maken met de optie Persoonlijke toegang geselecteerd.

Persoonlijke toegang configureren voor een bestaande naamruimte

Als u al een Event Hubs-naamruimte hebt, kunt u een privékoppelingsverbinding maken door de volgende stappen uit te voeren:

  1. Meld u aan bij de Azure-portal.

  2. Typ event hubs in de zoekbalk.

  3. Selecteer de naamruimte in de lijst waaraan u een privé-eindpunt wilt toevoegen.

  4. Selecteer op de pagina Netwerken bij Openbare netwerktoegang de optie Uitgeschakeld als u wilt dat de naamruimte alleen toegankelijk is via privé-eindpunten.

  5. Voor Vertrouwde Microsoft-services toestaan deze firewall te omzeilen selecteert u Ja als u wilt toestaan dat vertrouwde Microsoft-services deze firewall omzeilen.

    Schermopname van de pagina Netwerken met openbare netwerktoegang als Uitgeschakeld.

  6. Ga naar het tabblad Privé-eindpuntverbindingen .

  7. Selecteer de knop + Privé-eindpunt boven aan de pagina.

    Netwerkpagina - tabblad Privé-eindpuntverbindingen - Koppeling voor privé-eindpunt toevoegen.

  8. Voer op de pagina Basisinformatie de volgende stappen uit:

    1. Selecteer het Azure-abonnement waarin u het privé-eindpunt wilt maken.

    2. Selecteer de resourcegroep voor de privé-eindpuntresource.

    3. Voer een naam in voor het privé-eindpunt.

    4. Voer een naam in voor de netwerkinterface.

    5. Selecteer een regio voor het privé-eindpunt. Uw privé-eindpunt moet zich in dezelfde regio bevinden als uw virtuele netwerk, maar kan zich in een andere regio bevinden dan de privékoppelingsresource waarmee u verbinding maakt.

    6. Selecteer Volgende: de knop Resource > onderaan de pagina.

      Schermopname van de pagina Basisbeginselen van de wizard Privé-eindpunt maken.

  9. Controleer de instellingen op de pagina Resource en selecteer Volgende: Virtual Network.

    Schermopname van de pagina Resource van de wizard Privé-eindpunt maken.

  10. Op de pagina Virtual Network selecteert u het subnet in een virtueel netwerk waarnaar u het privé-eindpunt wilt implementeren.

    1. Selecteer een virtueel netwerk. Alleen virtuele netwerken in het geselecteerde abonnement en de geselecteerde locatie worden weergegeven in de vervolgkeuzelijst.

    2. Selecteer een subnet in het virtuele netwerk dat u hebt geselecteerd.

    3. U ziet dat het netwerkbeleid voor privé-eindpunten is uitgeschakeld. Als u deze optie wilt inschakelen, selecteert u Bewerken, werkt u de instelling bij en selecteert u Opslaan.

    4. Voor Privé-IP-configuratie is standaard de optie IP-adres dynamisch toewijzen geselecteerd. Als u een statisch IP-adres wilt toewijzen, selecteert u Ip-adres statisch toewijzen*.

    5. Selecteer bij Toepassingsbeveiligingsgroep een bestaande toepassingsbeveiligingsgroep of maak er een die moet worden gekoppeld aan het privé-eindpunt.

    6. Selecteer de knop Volgende: DNS > onderaan de pagina.

      Schermopname van de Virtual Network pagina van de wizard Privé-eindpunt maken.

  11. Selecteer op de pagina DNS of u het privé-eindpunt wilt integreren met een privé-DNS-zone en selecteer vervolgens Volgende: Tags.

  12. Maak op de pagina Tags alle tags (namen en waarden) die u wilt koppelen aan de privé-eindpuntresource. Selecteer vervolgens de knop Beoordelen en maken onderaan de pagina.

  13. Controleer op beoordelen en maken alle instellingen en selecteer Maken om het privé-eindpunt te maken.

    Privé-eindpunt maken - pagina Controleren en maken

  14. Controleer of de privé-eindpuntverbinding die u hebt gemaakt, wordt weergegeven in de lijst met eindpunten. In dit voorbeeld wordt het privé-eindpunt automatisch goedgekeurd omdat u verbinding hebt gemaakt met een Azure-resource in uw directory en u over voldoende machtigingen beschikt.

    Privé-eindpunt gemaakt

Vertrouwde Microsoft-services

Wanneer u de instelling Vertrouwde Microsoft-services toestaan deze firewall 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 kunt 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 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 Levering van gebeurtenissen 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 om toegang te krijgen tot de Event Hub vanuit een Azure Stream Analytics-taak (preview) voor meer informatie.

Azure IoT Hub Hiermee kunt 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 aangepast eindpunt om de verificatie op basis van identiteit te gebruiken.
Azure API Management

Met de API Management-service kunt u gebeurtenissen verzenden naar een Event Hub in uw 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 uit de Event Hub en ook gegevens schrijven naar de Event Hub.
Azure Synapse Hiermee kunt 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:

  • Door het systeem toegewezen identiteit inschakelen 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 kan de IoT-connector voor healthcare-API's gegevens van medische apparaten 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 kan Azure Digital Twins gegevens naar Event Hubs in uw Event Hubs-naamruimte verzenden. U moet ook de volgende stappen uitvoeren:

  • Door het systeem toegewezen identiteit inschakelen voor uw Azure Digital Twins-exemplaar.
  • Voeg de identiteit toe aan de rol Azure Event Hubs Gegevenszender in de Event Hubs-naamruimte.
  • Configureer vervolgens een Azure Digital Twins-eindpunt of Azure Digital Twins-gegevensgeschiedenisverbinding die gebruikmaakt van de door het systeem toegewezen identiteit om te verifiëren. Zie Azure Digital Twins-gebeurtenissen routeren en Eindpunten maken in Azure Digital Twins voor meer informatie over het configureren van eindpunten en gebeurtenisroutes naar Event Hubs-resources vanuit Azure Digital Twins.

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

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

Als u vertrouwde services toegang wilt geven tot uw naamruimte, gaat u naar het tabblad Openbare toegang op de pagina Netwerken en selecteert u Ja voor Toestaan dat vertrouwde Microsoft-services deze firewall omzeilen?.

Een privé-eindpunt toevoegen met Behulp van PowerShell

In het volgende voorbeeld ziet u hoe u Azure PowerShell gebruikt om een privé-eindpuntverbinding te maken. Er wordt geen toegewezen cluster voor u gemaakt. Volg de stappen in dit artikel om een toegewezen Event Hubs-cluster te maken.

$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


De privé-DNS-zone configureren

Maak een privé-DNS-zone voor het Event Hubs-domein en maak een koppelingskoppeling met het virtuele netwerk:

$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)  
    } 
}

Privé-eindpunten beheren met behulp van Azure Portal

Wanneer u een privé-eindpunt maakt, moet de verbinding worden goedgekeurd. Als de resource waarvoor u een privé-eindpunt maakt zich in uw directory bevindt, kunt u de verbindingsaanvraag goedkeuren mits u over voldoende machtigingen beschikt. Als u verbinding maakt met een Azure-resource in een andere map, moet u wachten totdat de eigenaar van die resource uw verbindingsaanvraag heeft goedgekeurd.

Er zijn vier inrichtingsstatussen:

Serviceactie Status privé-eindpunt serviceconsument Beschrijving
Geen In behandeling De verbinding wordt handmatig gemaakt en in afwachting van goedkeuring door de resource-eigenaar van de Private Link.
Goedkeuren Goedgekeurd De verbinding werd automatisch of handmatig goedgekeurd en is klaar om te worden gebruikt.
Afwijzen Afgewezen De verbinding werd afgewezen door de resource-eigenaar van de private link.
Verwijderen Ontkoppeld De verbinding is verwijderd door de resource-eigenaar van de private link, het privé-eindpunt wordt informatief en moet worden verwijderd voor opschoning.

Een privé-eindpuntverbinding goedkeuren, afwijzen of verwijderen

  1. Meld u aan bij Azure Portal.
  2. Typ event hubs in de zoekbalk.
  3. Selecteer de naamruimte die u wilt beheren.
  4. Selecteer het tabblad Netwerken.
  5. Ga naar de juiste sectie op basis van de bewerking die u wilt: goedkeuren, afwijzen of verwijderen.

Een privé-eindpuntverbinding goedkeuren

  1. Als er verbindingen zijn die in behandeling zijn, ziet u een verbinding met In behandeling in de inrichtingsstatus.

  2. Selecteer het privé-eindpunt dat u wilt goedkeuren

  3. Selecteer de knop Goedkeuren .

    Privé-eindpunt goedkeuren

  4. Voeg op de pagina Verbinding goedkeuren een opmerking toe (optioneel) en selecteer Ja. Als u Nee selecteert, gebeurt er niets.

  5. U ziet dat de status van de privé-eindpuntverbinding in de lijst is gewijzigd in Goedgekeurd.

Een privé-eindpuntverbinding weigeren

  1. Als er privé-eindpuntverbindingen zijn die u wilt weigeren, of het nu een aanvraag in behandeling is of een bestaande verbinding, selecteert u de verbinding en selecteert u de knop Weigeren .

    Privé-eindpunt weigeren

  2. Voer op de pagina Verbinding weigeren een opmerking in (optioneel) en selecteer Ja. Als u Nee selecteert, gebeurt er niets.

  3. U ziet dat de status van de privé-eindpuntverbinding in de lijst is gewijzigd in Geweigerd.

Een privé-eindpuntverbinding verwijderen

  1. Als u een privé-eindpuntverbinding wilt verwijderen, selecteert u deze in de lijst en selecteert u Verwijderen op de werkbalk.
  2. Selecteer op de pagina Verbinding verwijderen de optie Ja om het verwijderen van het privé-eindpunt te bevestigen. Als u Nee selecteert, gebeurt er niets.
  3. Als het goed is, ziet u dat de status is gewijzigd in Verbroken. Vervolgens verdwijnt het eindpunt uit de lijst.

Controleer of resources in het virtuele netwerk van het privé-eindpunt via een privé-IP-adres verbinding maken met uw Event Hubs-naamruimte en of ze de juiste privé-DNS-zoneintegratie hebben.

Maak eerst een nieuwe virtuele machine door de instructies te volgen in Een virtuele Windows-machine in de Azure Portal maken

Op het tabblad Netwerken :

  1. Geef Virtueel netwerk en Subnet op. U moet de Virtual Network selecteren waarop u het privé-eindpunt hebt geïmplementeerd.
  2. Geef een openbare IP-resource op.
  3. Selecteer Geen voor NIC-netwerkbeveiligingsgroep.
  4. Voor Taakverdeling selecteert u Nee.

Maak verbinding met de vm, open de opdrachtregel en voer de volgende opdracht uit:

nslookup <event-hubs-namespace-name>.servicebus.windows.net

Als het goed is, ziet u een resultaat dat er als volgt uitziet.

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

Beperkingen en ontwerpoverwegingen

  • Zie prijzen Azure Private Link voor informatie over prijzen.
  • Deze functie is beschikbaar in alle openbare Azure-regio's.
  • Maximum aantal privé-eindpunten per Event Hubs-naamruimte: 120.
  • Het verkeer wordt geblokkeerd op de toepassingslaag, niet op de TCP-laag. Daarom ziet u dat TCP-verbindingen of nslookup -bewerkingen slagen voor het openbare eindpunt, zelfs als de openbare toegang is uitgeschakeld.

Zie Azure Private Link-service: beperkingen voor meer informatie

Volgende stappen