Używanie prywatnych punktów końcowych dla usługi Azure SignalR Service

Możesz użyć prywatnych punktów końcowych dla usługi Azure SignalR Service, aby umożliwić klientom w sieci wirtualnej bezpieczny dostęp do danych za pośrednictwem usługi Private Link. Prywatny punkt końcowy używa adresu IP z przestrzeni adresowej sieci wirtualnej dla usługi Azure SignalR Service. Ruch sieciowy między klientami w sieci wirtualnej i usłudze Azure SignalR Service przechodzi przez łącze prywatne w sieci szkieletowej firmy Microsoft, eliminując narażenie z publicznego Internetu.

Korzystanie z prywatnych punktów końcowych dla usługi Azure SignalR Service umożliwia:

  • Zabezpiecz usługę Azure SignalR Service przy użyciu kontroli dostępu do sieci, aby zablokować wszystkie połączenia w publicznym punkcie końcowym usługi Azure SignalR Service.
  • Zwiększ bezpieczeństwo sieci wirtualnej, umożliwiając blokowanie eksfiltracji danych z sieci wirtualnej.
  • Bezpiecznie nawiąż połączenie z usługą Azure SignalR Services z sieci lokalnych łączących się z siecią wirtualną przy użyciu sieci VPN lub usługi ExpressRoutes z prywatną komunikacją równorzędną.

W tym artykule pokazano, jak używać prywatnych punktów końcowych dla usługi Azure SignalR Service.

Omówienie pojęć

Overview of private endpoints for Azure SignalR Service

Prywatny punkt końcowy to specjalny interfejs sieciowy dla usługi platformy Azure w sieci wirtualnej. Podczas tworzenia prywatnego punktu końcowego dla usługi Azure SignalR Service zapewnia bezpieczną łączność między klientami w sieci wirtualnej a usługą. Prywatny punkt końcowy ma przypisany adres IP z zakresu adresów IP sieci wirtualnej. Połączenie między prywatnym punktem końcowym a usługą Azure SignalR Service używa bezpiecznego łącza prywatnego.

Aplikacje w sieci wirtualnej mogą bezproblemowo łączyć się z usługą Azure SignalR Service za pośrednictwem prywatnego punktu końcowego, korzystając z tych samych parametry połączenia i mechanizmów autoryzacji, których będą używać w przeciwnym razie. Prywatne punkty końcowe mogą być używane ze wszystkimi protokołami obsługiwanymi przez usługę Azure SignalR Service, w tym interfejs API REST.

Podczas tworzenia prywatnego punktu końcowego dla usługi Azure SignalR Service w sieci wirtualnej żądanie zgody jest wysyłane do właściciela usługi Azure SignalR Service. Jeśli użytkownik żądający utworzenia prywatnego punktu końcowego jest również właścicielem usługi Azure SignalR Service, to żądanie zgody zostanie automatycznie zatwierdzone.

Właściciele usługi Azure SignalR Service mogą zarządzać żądaniami zgody i prywatnymi punktami końcowymi za pośrednictwem karty "Prywatne punkty końcowe" dla usługi Azure SignalR Service w witrynie Azure Portal.

Napiwek

Jeśli chcesz ograniczyć dostęp do usługi Azure SignalR Service tylko za pośrednictwem prywatnego punktu końcowego, skonfiguruj kontrolę dostępu do sieci, aby blokować lub kontrolować dostęp za pośrednictwem publicznego punktu końcowego.

Połączenie do prywatnych punktów końcowych

Klienci w sieci wirtualnej korzystającej z prywatnego punktu końcowego powinni używać tego samego parametry połączenia dla usługi Azure SignalR Service, co klienci łączący się z publicznym punktem końcowym. Polegamy na rozpoznawaniu nazw DNS w celu automatycznego kierowania połączeń z sieci wirtualnej do usługi Azure SignalR Service za pośrednictwem łącza prywatnego.

Ważne

Użyj tego samego parametry połączenia, aby nawiązać połączenie z usługą Azure SignalR Service przy użyciu prywatnych punktów końcowych, jak w przeciwnym razie. Nie łącz się z usługą Azure SignalR Service przy użyciu adresu privatelink URL poddomeny.

Domyślnie tworzymy prywatną strefę DNS dołączoną do sieci wirtualnej z niezbędnymi aktualizacjami dla prywatnych punktów końcowych. Jeśli jednak używasz własnego serwera DNS, może być konieczne wprowadzenie innych zmian w konfiguracji DNS. W sekcji Zmiany DNS dla prywatnych punktów końcowych opisano aktualizacje wymagane dla prywatnych punktów końcowych.

Zmiany DNS dla prywatnych punktów końcowych

Podczas tworzenia prywatnego punktu końcowego rekord zasobu CNAME systemu DNS dla usługi Azure SignalR Service jest aktualizowany do aliasu w poddomenie z prefiksem privatelink. Domyślnie tworzymy również prywatną strefę DNS odpowiadającą privatelink poddomenie z rekordami zasobów DNS A dla prywatnych punktów końcowych.

Po rozpoznaniu nazwy domeny usługi Azure SignalR Service spoza sieci wirtualnej przy użyciu prywatnego punktu końcowego jest rozpoznawany jako publiczny punkt końcowy usługi Azure SignalR Service. Po rozpoznaniu z sieci wirtualnej obsługującej prywatny punkt końcowy nazwa domeny jest rozpoznawana jako adres IP prywatnego punktu końcowego.

W przedstawionym przykładzie rekordy zasobów DNS dla usługi Azure SignalR Service "foobar" po rozpoznaniu spoza sieci wirtualnej obsługującej prywatny punkt końcowy będą następujące:

Imię i nazwisko/nazwa Typ Wartość
foobar.service.signalr.net CNAME foobar.privatelink.service.signalr.net
foobar.privatelink.service.signalr.net A <Publiczny adres IP usługi Azure SignalR Service>

Jak wspomniano wcześniej, można blokować lub kontrolować dostęp dla klientów spoza sieci wirtualnej za pośrednictwem publicznego punktu końcowego przy użyciu kontroli dostępu do sieci.

Rekordy zasobów DNS dla "foobar", po rozpoznaniu przez klienta w sieci wirtualnej hostująca prywatny punkt końcowy, będą następujące:

Imię i nazwisko/nazwa Typ Wartość
foobar.service.signalr.net CNAME foobar.privatelink.service.signalr.net
foobar.privatelink.service.signalr.net A 10.1.1.5

Takie podejście umożliwia dostęp do usługi Azure SignalR Service przy użyciu tych samych parametry połączenia dla klientów w sieci wirtualnej hostującego prywatne punkty końcowe i klientów spoza sieci wirtualnej.

Jeśli używasz niestandardowego serwera DNS w sieci, klienci muszą mieć możliwość rozpoznania nazwy FQDN punktu końcowego usługi Azure SignalR Service na prywatny adres IP punktu końcowego punktu końcowego punktu końcowego. Należy skonfigurować serwer DNS, aby delegować poddomenę łącza prywatnego do prywatnej strefy DNS dla sieci wirtualnej lub skonfigurować rekordy A dla foobar.privatelink.service.signalr.net z prywatnym adresem IP punktu końcowego.

Napiwek

W przypadku korzystania z niestandardowego lub lokalnego serwera DNS należy skonfigurować serwer DNS, aby rozpoznać nazwę usługi Azure SignalR Service w privatelink poddomenie na prywatny adres IP punktu końcowego. Można to zrobić, delegując poddomenę do prywatnej strefy DNS sieci wirtualnej lub konfigurując privatelink strefę DNS na serwerze DNS i dodając rekordy DNS A.

Zalecana nazwa strefy DNS dla prywatnych punktów końcowych dla usługi Azure SignalR Service to: privatelink.service.signalr.net.

Aby uzyskać więcej informacji na temat konfigurowania własnego serwera DNS do obsługi prywatnych punktów końcowych, zobacz następujące artykuły:

Tworzenie prywatnego punktu końcowego

Tworzenie prywatnego punktu końcowego wraz z nową usługą Azure SignalR Service w witrynie Azure Portal

  1. Podczas tworzenia nowej usługi Azure SignalR Service wybierz kartę Sieć. Wybierz pozycję Prywatny punkt końcowy jako metodę łączności.

    Create Azure SignalR Service - Networking tab

  2. Wybierz pozycję Dodaj. Wypełnij pola subskrypcja, grupa zasobów, lokalizacja, nazwa nowego prywatnego punktu końcowego. Wybierz sieć wirtualną i podsieć.

    Create Azure SignalR Service - Add private endpoint

  3. Wybierz pozycję Przejrzyj i utwórz.

Tworzenie prywatnego punktu końcowego dla istniejącej usługi Azure SignalR Service w witrynie Azure Portal

  1. Przejdź do usługi Azure SignalR Service.

  2. Wybierz menu ustawień o nazwie Połączenia prywatnego punktu końcowego.

  3. Wybierz przycisk + Prywatny punkt końcowy u góry.

    Private endpoint connections blade

  4. Wprowadź subskrypcję, grupę zasobów, nazwę zasobu i region dla nowego prywatnego punktu końcowego.

    Create private endpoint - Basics

  5. Wybierz docelowy zasób usługi Azure SignalR Service.

    Create private endpoint - Resource

  6. Wybieranie docelowej sieci wirtualnej

    Create private endpoint - Configuration

  7. Wybierz pozycję Przejrzyj i utwórz.

Tworzenie prywatnego punktu końcowego przy użyciu interfejsu wiersza polecenia platformy Azure

  1. Logowanie się do interfejsu wiersza polecenia platformy Azure
    az login
    
  2. Ustawianie subskrypcji platformy Azure
    az account set --subscription {AZURE SUBSCRIPTION ID}
    
  3. Tworzenie nowej grupy zasobów
    az group create -n {RG} -l {AZURE REGION}
    
  4. Rejestrowanie usługi Microsoft.SignalRService jako dostawcy
    az provider register -n Microsoft.SignalRService
    
  5. Tworzenie nowej usługi Azure SignalR Service
    az signalr create --name {NAME} --resource-group {RG} --location {AZURE REGION} --sku Standard_S1
    
  6. Tworzenie sieci wirtualnej
    az network vnet create --resource-group {RG} --name {vNet NAME} --location {AZURE REGION}
    
  7. Dodawanie podsieci
    az network vnet subnet create --resource-group {RG} --vnet-name {vNet NAME} --name {subnet NAME} --address-prefixes {addressPrefix}
    
  8. Wyłączanie zasad sieci wirtualnej
    az network vnet subnet update --name {subnet NAME} --resource-group {RG} --vnet-name {vNet NAME} --disable-private-endpoint-network-policies true
    
  9. Dodawanie strefy Prywatna strefa DNS
    az network private-dns zone create --resource-group {RG} --name privatelink.service.signalr.net
    
  10. Łączenie strefy Prywatna strefa DNS z siecią wirtualną
    az network private-dns link vnet create --resource-group {RG} --virtual-network {vNet NAME} --zone-name privatelink.service.signalr.net --name {dnsZoneLinkName} --registration-enabled true
    
  11. Tworzenie prywatnego punktu końcowego (automatycznie zatwierdzanie)
    az network private-endpoint create --resource-group {RG} --vnet-name {vNet NAME} --subnet {subnet NAME} --name {Private Endpoint Name}  --private-connection-resource-id "/subscriptions/{AZURE SUBSCRIPTION ID}/resourceGroups/{RG}/providers/Microsoft.SignalRService/SignalR/{NAME}" --group-ids signalr --connection-name {Private Link Connection Name} --location {AZURE REGION}
    
  12. Tworzenie prywatnego punktu końcowego (ręczne żądanie zatwierdzenia)
    az network private-endpoint create --resource-group {RG} --vnet-name {vNet NAME} --subnet {subnet NAME} --name {Private Endpoint Name}  --private-connection-resource-id "/subscriptions/{AZURE SUBSCRIPTION ID}/resourceGroups/{RG}/providers/Microsoft.SignalRService/SignalR/{NAME}" --group-ids signalr --connection-name {Private Link Connection Name} --location {AZURE REGION} --manual-request
    
  13. Pokaż stan Połączenie ion
    az network private-endpoint show --resource-group {RG} --name {Private Endpoint Name}
    

Kalkulacja cen

Aby uzyskać szczegółowe informacje o cenach, zobacz Cennik usługi Azure Private Link.

Znane problemy

Pamiętaj o następujących znanych problemach dotyczących prywatnych punktów końcowych dla usługi Azure SignalR Service

Warstwa Bezpłatna

Nie można utworzyć żadnego prywatnego punktu końcowego dla bezpłatnej warstwy usługi Azure SignalR Service.

Ograniczenia dostępu dla klientów w sieciach wirtualnych z prywatnymi punktami końcowymi

Klienci w sieciach wirtualnych z istniejącymi prywatnymi punktami końcowymi napotykają ograniczenia podczas uzyskiwania dostępu do innych wystąpień usługi Azure SignalR Service, które mają prywatne punkty końcowe. Przykład:

  • Gdy sieć wirtualna N1 ma prywatny punkt końcowy dla wystąpienia usługi Azure SignalR Service S1
    • Jeśli usługa Azure SignalR Service S2 ma prywatny punkt końcowy w sieci wirtualnej N2, klienci w sieci wirtualnej N1 muszą również uzyskać dostęp do usługi Azure SignalR Service S2 przy użyciu prywatnego punktu końcowego.
    • Jeśli usługa Azure SignalR Service S2 nie ma żadnych prywatnych punktów końcowych, klienci w sieci wirtualnej N1 mogą uzyskać dostęp do usługi Azure SignalR Service na tym koncie bez prywatnego punktu końcowego.

To ograniczenie jest wynikiem zmian DNS wprowadzonych podczas tworzenia prywatnego punktu końcowego przez usługę Azure SignalR Service S2.

Następne kroki