Azure SQL Database dostępu sieciowego do usługi Azure Synapse Analytics

Po utworzeniu serwera logicznego SQL z portalu Azure Portal dla programu Azure SQL Database i usługi Azure Synapse Analytics wynikiem jest publiczny punkt końcowy w formacie, yourservername.database.windows.net.

Aby selektywnie zezwolić na dostęp do bazy danych za pośrednictwem publicznego punktu końcowego, można użyć następujących kontrolek dostępu sieciowego:

  • Zezwalaj na usługi platformy Azure: Gdy jest ustawiona wartość WŁ., inne zasoby wewnątrz granicy platformy Azure, na przykład Maszyna wirtualna platformy Azure, mogą uzyskać dostęp do SQL Database
  • Reguły zapory IP. Ta funkcja umożliwia jawne zezwalanie na połączenia z określonego adresu IP, na przykład z komputerów lokalnych

Możesz również zezwolić na prywatny dostęp do bazy danych z sieci wirtualnych za pośrednictwem:

  • Reguły zapory sieci wirtualnej. Ta funkcja umożliwia ruch z określonej sieci wirtualnej wewnątrz granicy platformy Azure
  • Link prywatny: Ta funkcja umożliwia utworzenie prywatnego punktu końcowego dla logicznego SQL w określonej sieci wirtualnej

Ważne

Ten artykuł nie dotyczy SQLwystąpienia zarządzanego. Aby uzyskać więcej informacji na temat konfiguracji sieci, zobacz Nawiązywanie połączenia z wystąpieniem zarządzanym SQL Azure.

Zapoznaj się z poniższym klipem wideo, aby uzyskać szczegółowe objaśnienia tych kontrolek dostępu i ich działania:

Zezwalaj na usługi platformy Azure

Domyślnie podczas tworzenia nowego serwera logicznego SQL z portalu Azureto ustawienie jest wyłączone. To ustawienie jest wyświetlane, gdy łączność jest dozwolona przy użyciu punktu końcowego usługi publicznej.

To ustawienie można również zmienić za pośrednictwem okienka zapory po utworzeniu logicznego SQL w następujący sposób.

Zrzut ekranu przedstawiający zarządzanie zaporą serwera

Gdy jest ustawionawartość WŁ., twój serwer zezwala na komunikację ze wszystkich zasobów wewnątrz granicy platformy Azure, która może, ale nie musi być częścią subskrypcji.

W wielu przypadkach ustawienie WŁ. jest bardziej permisyjne niż to, czego chce większość klientów. Możesz ustawić to ustawienie na WYŁ., a następnie zastąpić je bardziej restrykcyjnymi regułami zapory IP lub reguł zapory wirtualnej.

Jednak ma to wpływ na następujące funkcje, które działają na komputerach wirtualnych na platformie Azure, które nie są częścią Twojej sieci wirtualnej i przez to łączą się z bazą danych za pośrednictwem adresu IP platformy Azure:

Usługa importowania eksportu

Usługa importowania eksportu nie działa, gdy dla opcji Zezwalaj na dostęp do usług platformy Azure jest ustawiona wartość WYŁ.. Możesz jednak rozwiązać ten problem, ręcznie uruchamiając usługę sqlpackage.exe z maszyny wirtualnej platformy Azure lub wykonując eksportowanie bezpośrednio w kodzie przy użyciu interfejsu API DACFx.

Data Sync

Aby użyć funkcji synchronizacji danych z ustawioną dla pozycji Zezwalaj na dostęp do usług platformy Azure ustawioną wartość WYŁ.,musisz utworzyć poszczególne wpisy reguł zapory w celu dodania adresów IP z tagu usługi Sql dla regionu hostowania bazy danych Centrum. Dodaj te reguły zapory na poziomie serwera do serwerów hostującym bazy danych centrum i członków (które mogą być w różnych regionach)

Użyj następującego skryptu programu PowerShell, aby wygenerować adresy IP odpowiadające tagowi SQL dla regionu Stanów Zjednoczonych Zachód

PS C:\>  $serviceTags = Get-AzNetworkServiceTag -Location eastus2
PS C:\>  $sql = $serviceTags.Values | Where-Object { $_.Name -eq "Sql.WestUS" }
PS C:\> $sql.Properties.AddressPrefixes.Count
70
PS C:\> $sql.Properties.AddressPrefixes
13.86.216.0/25
13.86.216.128/26
13.86.216.192/27
13.86.217.0/25
13.86.217.128/26
13.86.217.192/27

Porada

Get-AzNetworkServiceTag zwraca zakres globalny tagu SQL mimo określenia parametru Location. Pamiętaj, aby przefiltrować ją do regionu hostowania bazy danych Centrum używanej przez grupę synchronizacji.

Zwróć uwagę, że wynik skryptu programu PowerShell jest w notacji routingu Inter-Domain (CIDR, Classless). Ten adres IP należy przekonwertować na format Start i End za pomocą formatu adresu IPGet-IPrangeStartEnd.ps1w ten sposób:

PS C:\> Get-IPrangeStartEnd -ip 52.229.17.93 -cidr 26
start        end
-----        ---
52.229.17.64 52.229.17.127

Możesz użyć tego dodatkowego skryptu programu PowerShell w celu przekonwertowania wszystkich adresów IP z CIDR na format Adresu IP rozpoczęcia i zakończenia.

PS C:\>foreach( $i in $sql.Properties.AddressPrefixes) {$ip,$cidr= $i.split('/') ; Get-IPrangeStartEnd -ip $ip -cidr $cidr;}
start          end
-----          ---
13.86.216.0    13.86.216.127
13.86.216.128  13.86.216.191
13.86.216.192  13.86.216.223

Teraz możesz dodać te reguły jako odrębne reguły zapory, a następnie ustawić dla usługi Azure dostęp do serwera wartość WYŁ..

Reguły zapory IP

Zapora oparta na adresie IP jest funkcją logiczną serwera SQL na platformie Azure, która uniemożliwia wszystkim dostęp do serwera do momentu jawnego dodania adresów IP komputerów klienckich.

Reguły zapory sieci wirtualnej

Oprócz reguł IP zapora serwera umożliwia definiowanie reguł sieci wirtualnej.
Aby dowiedzieć się więcej, zobacz Wirtualne punkty końcowe usługi sieciowej i reguły dla Azure SQL Database lub obejrzyj ten klip wideo:

Terminologia dotycząca sieci na platformie Azure

Zapoznaj się z następującymi warunkami korzystania z sieci platformy Azure podczas zapoznawanie się z regułami wirtualnej zapory sieciowej

Sieć wirtualna: Z subskrypcją platformy Azure możesz skojarzyć sieci wirtualne

Podsieci: Sieć wirtualna zawiera podsieci. Wszystkie maszyny wirtualne platformy Azure przypisane do podsieci. Jedna podsieci może zawierać wiele maszyn wirtualnych lub innych węzłów obliczeniowych. Węzły obliczeniowe spoza Twojej sieci wirtualnej nie mogą uzyskać dostępu do Twojej sieci wirtualnej, chyba że skonfigurujesz zabezpieczenia w celu umożliwienia dostępu.

Punkt końcowy usługi sieci wirtualnej: Punkt końcowy usługi sieci wirtualnej to podsieci, której wartości właściwości zawierają co najmniej jedną formalną nazwę typu usługi Azure. W tym artykule interesujemy się nazwą typu Microsoft.Sql,która odwołuje się do usługi Azure o nazwie SQL Database.

Reguła sieci wirtualnej: Reguła sieci wirtualnej dla serwera to podsieci wyświetlane na liście kontroli dostępu (ACL) serwera. Aby przysłać bazę danych w programie SQL Database, podsieci muszą zawierać nazwę typu Microsoft.Sql. Reguła sieci wirtualnej nakazuje serwerowi zaakceptowanie komunikacji z każdego węzła w podsieci.

Ip vs. Virtual network firewall rules

Zapora Azure SQL Database umożliwia określenie zakresów adresów IP, z których komunikacja jest akceptowana w SQL Database. Ta metoda działa dobrze w przypadku stabilnego adresu IP spoza sieci prywatnej azure. Natomiast w sieci prywatnej Azure maszyny wirtualne są konfigurowane z dynamicznymi adresami IP. Dynamiczne adresy IP mogą się zmienić po ponownym uruchomieniu maszyny wirtualnej, co unieważnia regułę zapory opartej na adresie IP. Dynamiczne podanie adresu IP w regułze zapory w środowisku produkcyjnym może być bardzo paskudne.

To ograniczenie można obe przejść przez uzyskanie statycznego adresu IP maszyny wirtualnej. Aby uzyskać szczegółowe informacje, zobacz Tworzenie maszyny wirtualnej ze statycznym publicznymadresem IP przy użyciu portalu Azure Portal. Jednak statyczne podejście do adresów IP może stać się trudne w zarządzaniu, a ich skala może kosztować.

Łatwiejsze są reguły sieci wirtualnej w celu ustanawiania dostępu do konkretnej podsieci zawierającej maszyny wirtualne i zarządzania dostępem z niej.

Uwaga

Nie ma jeszcze SQL Database w podsieci. Jeśli serwer był węzłem w podsieci w Twojej sieci wirtualnej, wszystkie węzły w sieci wirtualnej mogły komunikować się z Twoją siecią SQL Database. W takim przypadku maszyny wirtualne mogą komunikować się z innymi SQL Database bez konieczności reguł sieci wirtualnej ani reguł IP.

Link prywatny umożliwia połączenie się z serwerem za pośrednictwem prywatnego punktu końcowego. Prywatny punkt końcowy to prywatny adres IP w określonej sieci wirtualnej i podsieci.

Następne kroki

  • Aby szybko rozpocząć tworzenie reguły zapory ip na poziomie serwera, zobacz Tworzenie bazy danych w programie SQL Database.

  • Aby szybko rozpocząć tworzenie reguły zapory sieci wirtualnej na poziomie serwera, zobacz Punkty końcowe usługi wirtualnej sieci i reguły dla usługi Azure SQL Database.

  • Aby uzyskać pomoc na temat nawiązywania połączenia z bazą danych w programie SQL Database z aplikacji open source lub aplikacji innych firm, zobacz Przykłady kodów Szybki startklienta w celu SQL Database.

  • Aby uzyskać informacje o dodatkowych portach, które mogą być potrzebne do otwarcia, zobacz SQL Database: Zewnętrzna a wewnętrzna sekcja portów ponad 1433 dla ADO.NET 4.5 i SQL Database

  • Aby uzyskać omówienie Azure SQL Database łączności danych, zobacz Architektura łączności SQL Azure

  • Aby uzyskać omówienie zabezpieczeń Azure SQL Database, zobacz Zabezpieczanie bazy danych.