Zezwalaj na dostęp do Azure Event Hubs przestrzeni nazw za pośrednictwem prywatnych punktów końcowych

usługa Azure Private Link Service umożliwia dostęp do usług platformy Azure (na przykład Azure Event Hubs, Azure Storage i Azure Cosmos DB) oraz hostowanych przez platformę Azure usług klientów/partnerów za pośrednictwem prywatnego punktu końcowego w sieci wirtualnej.

Prywatny punkt końcowy to interfejs sieciowy, który nawiązuje prywatne i bezpieczne połączenie z usługą obsługiwaną przez usługę Azure Private Link. Prywatny punkt końcowy używa prywatnego adresu IP z sieci wirtualnej, efektywnie przenosząc usługę do sieci wirtualnej. Cały ruch do usługi może być kierowany przez prywatny punkt końcowy. Nie jest wówczas wymagane użycie bram, urządzeń NAT, połączeń ExpressRoute, połączeń VPN ani publicznych adresów IP. Ruch między siecią wirtualną a usługą odbywa się za pośrednictwem sieci szkieletowej firmy Microsoft, eliminując ekspozycję z publicznego Internetu. Możesz nawiązać połączenie z wystąpieniem zasobu platformy Azure, zapewniając najwyższy poziom szczegółowości kontroli dostępu.

Aby uzyskać więcej informacji, zobacz Co to jest Azure Private Link?

Ważne rzeczy, na które należy zwrócić uwagę

  • Ta funkcja nie jest obsługiwana w warstwie Podstawowa .
  • Włączenie prywatnych punktów końcowych może uniemożliwić innym usługom platformy Azure interakcję z usługą Event Hubs. Żądania, które są zablokowane, obejmują te z innych usług platformy Azure, z Azure Portal, z usług rejestrowania i metryk itd. Wyjątkiem jest zezwolenie na dostęp do zasobów usługi Event Hubs z określonych zaufanych usług nawet wtedy, gdy prywatne punkty końcowe są włączone. Aby uzyskać listę zaufanych usług, zobacz Zaufane usługi.
  • Określ co najmniej jedną regułę ip lub regułę sieci wirtualnej dla przestrzeni nazw, aby zezwolić na ruch tylko z określonych adresów IP lub podsieci sieci wirtualnej. Jeśli nie ma reguł adresów IP i sieci wirtualnej, przestrzeń nazw może być dostępna za pośrednictwem publicznego Internetu (przy użyciu klucza dostępu).

Dodawanie prywatnego punktu końcowego przy użyciu Azure Portal

Wymagania wstępne

Aby zintegrować przestrzeń nazw usługi Event Hubs z Azure Private Link, potrzebne są następujące jednostki lub uprawnienia:

  • Przestrzeń nazw usługi Event Hubs.
  • Sieć wirtualna platformy Azure.
  • Podsieć w sieci wirtualnej. Możesz użyć podsieci domyślnej .
  • Uprawnienia właściciela lub współautora dla przestrzeni nazw i sieci wirtualnej.

Prywatny punkt końcowy i sieć wirtualna muszą znajdować się w tym samym regionie. Po wybraniu regionu prywatnego punktu końcowego przy użyciu portalu program automatycznie filtruje tylko sieci wirtualne, które znajdują się w tym regionie. Przestrzeń nazw może znajdować się w innym regionie.

Prywatny punkt końcowy używa prywatnego adresu IP w sieci wirtualnej.

Konfigurowanie dostępu prywatnego podczas tworzenia przestrzeni nazw

Podczas tworzenia przestrzeni nazw można zezwolić tylko na dostęp publiczny (ze wszystkich sieci) lub tylko prywatny (tylko za pośrednictwem prywatnych punktów końcowych) do przestrzeni nazw.

Jeśli wybierzesz opcję Dostęp prywatny na stronie Sieć kreatora tworzenia przestrzeni nazw, możesz dodać prywatny punkt końcowy na stronie, wybierając przycisk + Prywatny punkt końcowy . Zobacz następną sekcję, aby uzyskać szczegółowe instrukcje dotyczące dodawania prywatnego punktu końcowego.

Zrzut ekranu przedstawiający stronę Sieć kreatora Tworzenia przestrzeni nazw z wybraną opcją Dostęp prywatny.

Konfigurowanie dostępu prywatnego dla istniejącej przestrzeni nazw

Jeśli masz już przestrzeń nazw usługi Event Hubs, możesz utworzyć połączenie łącza prywatnego, wykonując następujące kroki:

  1. Zaloguj się w witrynie Azure Portal.

  2. Na pasku wyszukiwania wpisz event hubs.

  3. Wybierz przestrzeń nazw z listy, do której chcesz dodać prywatny punkt końcowy.

  4. Na stronie Sieć w obszarze Dostęp do sieci publicznej wybierz pozycję Wyłączone , jeśli chcesz, aby dostęp do przestrzeni nazw był uzyskiwany tylko za pośrednictwem prywatnych punktów końcowych.

  5. W obszarze Zezwalaj zaufanym usługom firmy Microsoft na obejście tej zapory wybierz pozycję Tak , jeśli chcesz zezwolić zaufanym usługom firmy Microsoft na obejście tej zapory.

    Zrzut ekranu przedstawiający stronę Sieć z dostępem do sieci publicznej jako Wyłączone.

  6. Przejdź do karty Połączenia prywatnego punktu końcowego .

  7. Wybierz przycisk + Prywatny punkt końcowy w górnej części strony.

    Strona sieci — karta Połączenia prywatnego punktu końcowego — dodawanie łącza prywatnego punktu końcowego.

  8. Na stronie Podstawy wykonaj następujące kroki:

    1. Wybierz subskrypcję platformy Azure , w której chcesz utworzyć prywatny punkt końcowy.

    2. Wybierz grupę zasobów dla zasobu prywatnego punktu końcowego.

    3. Wprowadź nazwę prywatnego punktu końcowego.

    4. Wprowadź nazwę interfejsu sieciowego.

    5. Wybierz region dla prywatnego punktu końcowego. Prywatny punkt końcowy musi znajdować się w tym samym regionie co sieć wirtualna, ale może znajdować się w innym regionie niż zasób łącza prywatnego, z którym nawiązujesz połączenie.

    6. Wybierz przycisk Dalej: Zasób > w dolnej części strony.

      Zrzut ekranu przedstawiający stronę Podstawowe w kreatorze Tworzenia prywatnego punktu końcowego.

  9. Na stronie Zasób przejrzyj ustawienia i wybierz pozycję Dalej: Virtual Network.

    Zrzut ekranu przedstawiający stronę Zasób kreatora Tworzenia prywatnego punktu końcowego.

  10. Na stronie Virtual Network należy wybrać podsieć w sieci wirtualnej, w której chcesz wdrożyć prywatny punkt końcowy.

    1. Wybierz sieć wirtualną. Na liście rozwijanej są wyświetlane tylko sieci wirtualne w aktualnie wybranej subskrypcji i lokalizacji.

    2. Wybierz podsieć w wybranej sieci wirtualnej.

    3. Zwróć uwagę, że zasady sieci dla prywatnych punktów końcowych są wyłączone. Jeśli chcesz ją włączyć, wybierz pozycję edytuj, zaktualizuj ustawienie, a następnie wybierz pozycję Zapisz.

    4. W przypadku konfiguracji prywatnego adresu IP jest domyślnie wybrana opcja Dynamiczne przydzielanie adresu IP . Jeśli chcesz przypisać statyczny adres IP, wybierz pozycję Statycznie przydziel adres IP*.

    5. W obszarze Grupa zabezpieczeń aplikacji wybierz istniejącą grupę zabezpieczeń aplikacji lub utwórz grupę, która ma być skojarzona z prywatnym punktem końcowym.

    6. Wybierz przycisk Dalej: DNS > w dolnej części strony.

      Zrzut ekranu przedstawiający stronę Virtual Network Kreatora tworzenia prywatnego punktu końcowego.

  11. Na stronie DNS wybierz, czy prywatny punkt końcowy ma być zintegrowany z prywatną strefą DNS, a następnie wybierz pozycję Dalej: Tagi.

  12. Na stronie Tagi utwórz wszystkie tagi (nazwy i wartości), które chcesz skojarzyć z zasobem prywatnego punktu końcowego. Następnie wybierz przycisk Przejrzyj i utwórz w dolnej części strony.

  13. W obszarze Przeglądanie + tworzenie przejrzyj wszystkie ustawienia i wybierz pozycję Utwórz , aby utworzyć prywatny punkt końcowy.

    Tworzenie prywatnego punktu końcowego — przeglądanie i tworzenie strony

  14. Upewnij się, że na liście punktów końcowych zostanie wyświetlone utworzone połączenie prywatnego punktu końcowego. W tym przykładzie prywatny punkt końcowy jest automatycznie zatwierdzany, ponieważ połączono się z zasobem platformy Azure w katalogu i masz wystarczające uprawnienia.

    Utworzony prywatny punkt końcowy

Zaufane usługi firmy Microsoft

Po włączeniu opcji Zezwalaj zaufanym usługom firmy Microsoft na obejście tego ustawienia zapory następujące usługi w ramach tej samej dzierżawy otrzymują dostęp do zasobów usługi Event Hubs.

Zaufana usługa Obsługiwane scenariusze użycia
Azure Event Grid Umożliwia Azure Event Grid wysyłanie zdarzeń do centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Należy również wykonać następujące czynności:
  • Włączanie tożsamości przypisanej przez system dla tematu lub domeny
  • Dodawanie tożsamości do roli nadawcy danych Azure Event Hubs w przestrzeni nazw usługi Event Hubs
  • Następnie skonfiguruj subskrypcję zdarzeń, która używa centrum zdarzeń jako punktu końcowego do korzystania z tożsamości przypisanej przez system.

Aby uzyskać więcej informacji, zobacz Dostarczanie zdarzeń przy użyciu tożsamości zarządzanej

Usługa Azure Stream Analytics Umożliwia zadaniu usługi Azure Stream Analytics odczytywanie danych z (wejściowych) lub zapisywanie danych w centrach zdarzeń (wyjściowych) w przestrzeni nazw usługi Event Hubs.

Ważne: zadanie usługi Stream Analytics należy skonfigurować tak, aby używało tożsamości zarządzanej do uzyskiwania dostępu do centrum zdarzeń. Aby uzyskać więcej informacji, zobacz Używanie tożsamości zarządzanych do uzyskiwania dostępu do centrum zdarzeń z zadania usługi Azure Stream Analytics (wersja zapoznawcza).

Azure IoT Hub Umożliwia IoT Hub wysyłanie komunikatów do centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Należy również wykonać następujące czynności:
  • Włączanie tożsamości przypisanej przez system dla centrum IoT
  • Dodaj tożsamość do roli nadawcy danych Azure Event Hubs w przestrzeni nazw usługi Event Hubs.
  • Następnie skonfiguruj IoT Hub, która używa centrum zdarzeń jako niestandardowego punktu końcowego do korzystania z uwierzytelniania opartego na tożsamościach.
Usługa Azure API Management

Usługa API Management umożliwia wysyłanie zdarzeń do centrum zdarzeń w przestrzeni nazw usługi Event Hubs.

Azure Monitor (ustawienia diagnostyczne i grupy akcji) Umożliwia usłudze Azure Monitor wysyłanie informacji diagnostycznych i powiadomień o alertach do centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Usługa Azure Monitor może odczytywać dane z centrum zdarzeń, a także zapisywać dane w centrum zdarzeń.
Azure Synapse Umożliwia Azure Synapse nawiązywanie połączenia z centrum zdarzeń przy użyciu tożsamości zarządzanej obszaru roboczego usługi Synapse. Dodaj rolę Azure Event Hubs Nadawca danych, Odbiorca lub Właściciel do tożsamości w przestrzeni nazw usługi Event Hubs.
Azure Data Explorer Umożliwia usłudze Azure Data Explorer odbieranie zdarzeń z centrum zdarzeń przy użyciu tożsamości zarządzanej klastra. Należy wykonać następujące czynności:
  • Konfigurowanie tożsamości zarządzanej na platformie Azure Data Explorer
  • Udziel roli odbiornika danych Azure Event Hubs tożsamości w centrum zdarzeń.
 
Azure IoT Central

Umożliwia usłudze IoT Central eksportowanie danych do centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Należy również wykonać następujące czynności:

Azure Health Data Services Umożliwia łącznikowi IoT dla usług Healthcare APIs pozyskiwanie danych urządzeń medycznych z przestrzeni nazw usługi Event Hubs i utrwalanie danych w skonfigurowanej usłudze Fast Healthcare Interoperability Resources (FHIR®). Łącznik IoT powinien być skonfigurowany do używania tożsamości zarządzanej w celu uzyskania dostępu do centrum zdarzeń. Aby uzyskać więcej informacji, zobacz Wprowadzenie do łącznika IoT — Interfejsy API usługi Azure Healthcare.
Azure Digital Twins Umożliwia usłudze Azure Digital Twins wyjście danych do centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Należy również wykonać następujące czynności:

  • Włącz tożsamość przypisaną przez system dla wystąpienia usługi Azure Digital Twins.
  • Dodaj tożsamość do roli nadawcy danych Azure Event Hubs w przestrzeni nazw usługi Event Hubs.
  • Następnie skonfiguruj punkt końcowy usługi Azure Digital Twins lub połączenie historii danych usługi Azure Digital Twins, które używa tożsamości przypisanej przez system do uwierzytelniania. Aby uzyskać więcej informacji na temat konfigurowania punktów końcowych i tras zdarzeń do zasobów usługi Event Hubs z usługi Azure Digital Twins, zobacz Routing zdarzeń usługi Azure Digital Twins i Tworzenie punktów końcowych w usłudze Azure Digital Twins.

Inne zaufane usługi dla Azure Event Hubs można znaleźć poniżej:

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

Aby zezwolić zaufanym usługom na dostęp do przestrzeni nazw, przejdź na kartę Dostęp publiczny na stronie Sieć i wybierz pozycję Tak , aby zezwalać zaufanym usługom firmy Microsoft na obejście tej zapory?.

Dodawanie prywatnego punktu końcowego przy użyciu programu PowerShell

W poniższym przykładzie pokazano, jak za pomocą Azure PowerShell utworzyć połączenie prywatnego punktu końcowego. Nie tworzy dedykowanego klastra. Wykonaj kroki opisane w tym artykule , aby utworzyć dedykowany klaster usługi Event Hubs.

$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


Konfigurowanie prywatnej strefy DNS

Utwórz prywatną strefę DNS dla domeny usługi Event Hubs i utwórz link skojarzenia z siecią wirtualną:

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

Zarządzanie prywatnymi punktami końcowymi przy użyciu Azure Portal

Podczas tworzenia prywatnego punktu końcowego należy zatwierdzić połączenie. Jeśli zasób, dla którego tworzysz prywatny punkt końcowy, znajduje się w katalogu, możesz zatwierdzić żądanie połączenia, pod warunkiem, że masz wystarczające uprawnienia. Jeśli łączysz się z zasobem platformy Azure w innym katalogu, musisz poczekać, aż właściciel tego zasobu zatwierdzi żądanie połączenia.

Istnieją cztery stany aprowizacji:

Akcja w usłudze Stan prywatnego punktu końcowego odbiorcy usługi Opis
Brak Oczekiwanie Połączenie jest tworzone ręcznie i oczekuje na zatwierdzenie od właściciela zasobu Private Link.
Zatwierdzenie Approved (Zatwierdzono) Połączenie zostało automatycznie lub ręcznie zatwierdzone i jest gotowe do użycia.
Reject Odrzucone Połączenie zostało odrzucone przez właściciela zasobu łącza prywatnego.
Usuń Odłączony Połączenie zostało usunięte przez właściciela zasobu łącza prywatnego, prywatny punkt końcowy staje się informacyjny i powinien zostać usunięty w celu oczyszczenia.

Zatwierdzanie, odrzucanie lub usuwanie połączenia prywatnego punktu końcowego

  1. Zaloguj się w witrynie Azure Portal.
  2. Na pasku wyszukiwania wpisz event hubs.
  3. Wybierz przestrzeń nazw , którą chcesz zarządzać.
  4. Wybierz kartę Sieć.
  5. Przejdź do odpowiedniej sekcji na podstawie operacji, którą chcesz: zatwierdzić, odrzucić lub usunąć.

Zatwierdzanie połączenia prywatnego punktu końcowego

  1. Jeśli istnieją jakiekolwiek oczekujące połączenia, zostanie wyświetlone połączenie z oczekującym w stanie aprowizacji.

  2. Wybierz prywatny punkt końcowy , który chcesz zatwierdzić

  3. Wybierz przycisk Zatwierdź .

    Zatwierdzanie prywatnego punktu końcowego

  4. Na stronie Zatwierdź połączenie dodaj komentarz (opcjonalnie) i wybierz pozycję Tak. Jeśli wybierzesz pozycję Nie, nic się nie stanie.

  5. Stan połączenia prywatnego punktu końcowego powinien zostać wyświetlony na liście zmieniony na Zatwierdzone.

Odrzucanie połączenia prywatnego punktu końcowego

  1. Jeśli istnieją jakiekolwiek połączenia prywatnego punktu końcowego, które chcesz odrzucić, niezależnie od tego, czy jest to oczekujące żądanie, czy istniejące połączenie, wybierz połączenie i wybierz przycisk Odrzuć .

    Odrzucanie prywatnego punktu końcowego

  2. Na stronie Odrzucanie połączenia wprowadź komentarz (opcjonalnie) i wybierz pozycję Tak. Jeśli wybierzesz pozycję Nie, nic się nie stanie.

  3. Stan połączenia prywatnego punktu końcowego powinien zostać wyświetlony na liście zmieniony na Odrzucone.

Usuwanie połączenia prywatnego punktu końcowego

  1. Aby usunąć połączenie z prywatnym punktem końcowym, wybierz je na liście, a następnie wybierz pozycję Usuń na pasku narzędzi.
  2. Na stronie Usuwanie połączenia wybierz pozycję Tak , aby potwierdzić usunięcie prywatnego punktu końcowego. Jeśli wybierzesz pozycję Nie, nic się nie stanie.
  3. Powinien zostać wyświetlony stan zmieniony na Rozłączone. Następnie punkt końcowy zniknie z listy.

Należy sprawdzić, czy zasoby w sieci wirtualnej prywatnego punktu końcowego łączą się z przestrzenią nazw usługi Event Hubs za pośrednictwem prywatnego adresu IP i że mają prawidłową integrację prywatnej strefy DNS.

Najpierw utwórz maszynę wirtualną, wykonując kroki opisane w temacie Tworzenie maszyny wirtualnej z systemem Windows w Azure Portal

Na karcie Sieć :

  1. Określ sieć wirtualną i podsieć. Musisz wybrać Virtual Network, na którym wdrożono prywatny punkt końcowy.
  2. Określ zasób publicznego adresu IP .
  3. W obszarze Sieciowa grupa zabezpieczeń karty sieciowej wybierz pozycję Brak.
  4. W obszarze Równoważenie obciążenia wybierz pozycję Nie.

Połącz się z maszyną wirtualną, otwórz wiersz polecenia i uruchom następujące polecenie:

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

Powinien zostać wyświetlony wynik podobny do poniższego.

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

Ograniczenia i zagadnienia dotyczące projektowania

  • Aby uzyskać informacje o cenach, zobacz Azure Private Link cennik.
  • Ta funkcja jest dostępna we wszystkich regionach publicznych platformy Azure.
  • Maksymalna liczba prywatnych punktów końcowych na przestrzeń nazw usługi Event Hubs: 120.
  • Ruch jest blokowany w warstwie aplikacji, a nie w warstwie TCP. W związku z tym połączenia TCP lub nslookup operacje kończą się powodzeniem względem publicznego punktu końcowego, mimo że dostęp publiczny jest wyłączony.

Aby uzyskać więcej informacji, zobacz Azure Private Link service: Limitations (Usługa Azure Private Link: ograniczenia)

Następne kroki