Řízení přístupu k síti ve službě Azure SQL Database a Azure Synapse Analytics

Platí pro:Azure SQL DatabaseAzure Synapse Analytics (pouze vyhrazené fondy SQL)

Když vytvoříte logický server z webu Azure Portal pro Azure SQL Database a Azure Synapse Analytics, výsledkem bude veřejný koncový bod ve formátu yourservername.database.windows.net.

Pomocí následujících řízení přístupu k síti můžete selektivně povolit přístup k databázi přes veřejný koncový bod:

  • Povolit službám a prostředkům Azure přístup k tomuto serveru: Pokud je tato možnost povolená, mají ostatní prostředky v rámci hranice Azure, například virtuální počítač Azure, přístup ke službě SQL Database
  • Pravidla brány firewall protokolu IP: Pomocí této funkce můžete explicitně povolit připojení z konkrétní IP adresy, například z místních počítačů.

Privátní přístup k databázi můžete povolit také z virtuálních sítí prostřednictvím:

  • Pravidla brány firewall virtuální sítě: Tato funkce slouží k povolení provozu z konkrétní virtuální sítě v rámci hranice Azure.
  • Private Link: Pomocí této funkce vytvořte privátní koncový bod pro logický server v Azure v rámci konkrétní virtuální sítě.

Důležité

Tento článek se nevztahuje na spravovanou instanci SQL. Další informace o konfiguraci sítě najdete v tématu připojení ke službě Azure SQL Managed Instance .

V následujícím videu najdete základní vysvětlení těchto ovládacích prvků přístupu a toho, co dělají:

Povolit služby Azure

Ve výchozím nastavení při vytváření nového logického serveru z webu Azure Portal je možnost Povolit službám a prostředkům Azure přístup k tomuto serveru nezaškrtnutá a není povolená. Toto nastavení se zobrazí v případě, že je povolené připojení přes veřejný koncový bod služby.

Toto nastavení můžete také změnit prostřednictvím nastavení Sítě po vytvoření logického serveru následujícím způsobem:

Screenshot of manage server firewall

Když povolíte službám a prostředkům Azure přístup k tomuto serveru , váš server povolí komunikaci ze všech prostředků uvnitř hranice Azure, která může nebo nemusí být součástí vašeho předplatného.

V mnohapřípadechch Toto nastavení můžete zrušit a nahradit ho více omezujícími pravidly brány firewall protokolu IP nebo pravidly brány firewall virtuální sítě.

To ale má vliv na následující funkce, které běží na virtuálních počítačích v Azure, které nejsou součástí vaší virtuální sítě, a proto se k databázi připojují přes IP adresu Azure:

Služba Import/Export

Služba importu exportu nefunguje, pokud není povolená možnost Povolit službám a prostředkům Azure přístup k tomuto serveru . Problém ale můžete vyřešit ručním spuštěním sqlPackage z virtuálního počítače Azure nebo provedením exportu přímo v kódu pomocí rozhraní DACFx API.

Synchronizace dat

Pokud chcete použít funkci Synchronizace dat se službou Povolit službám a prostředkům Azure přístup k tomuto serveru , není povolená, musíte vytvořit jednotlivé položky pravidel brány firewall pro přidání IP adres ze značky služby Sql pro oblast, která je hostitelem databáze centra . Přidejte tato pravidla brány firewall na úrovni serveru na servery, které jsou hostiteli centrálních i členských databází (které můžou být v různých oblastech).

Pomocí následujícího skriptu PowerShellu vygenerujte IP adresy odpovídající značce služby SQL pro oblast USA – západ.

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

Tip

Get-AzNetworkServiceTag vrátí globální rozsah značky služby SQL, přestože zadává parametr Location. Nezapomeňte ji filtrovat do oblasti, která je hostitelem databáze centra používané vaší skupinou synchronizace.

Všimněte si, že výstup skriptu PowerShellu je v zápisu CIDR (Classless Inter-Domain Routing). To je potřeba převést na formát počáteční a koncové IP adresy pomocí get-IPrangeStartEnd.ps1 takto:

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

Tento další skript PowerShellu můžete použít k převodu všech IP adres z CIDR na formát počáteční a koncové IP adresy.

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

Teď je můžete přidat jako jedinečná pravidla brány firewall a pak zakázat nastavení Povolit službám a prostředkům Azure přístup k tomuto serveru.

Pravidla brány firewall protokolu IP

Brána firewall založená na protokolu IP je funkce logického serveru v Azure, která brání veškerému přístupu k vašemu serveru, dokud explicitně nepřidáte IP adresy klientských počítačů.

Pravidla brány firewall virtuální sítě

Kromě pravidel PROTOKOLU IP umožňuje brána firewall serveru definovat pravidla virtuální sítě. Další informace najdete v tématu Koncové body služby virtuální sítě a pravidla pro Azure SQL Database.

Terminologie sítí Azure

Při prozkoumání pravidel brány firewall virtuální sítě mějte na paměti následující podmínky sítí Azure.

Virtuální síť: Virtuální sítě můžete mít přidružené k vašemu předplatnému Azure.

Podsíť: Virtuální síť obsahuje podsítě. Všechny virtuální počítače Azure, které jste přiřadili k podsítím. Jedna podsíť může obsahovat několik virtuálních počítačů nebo jiných výpočetních uzlů. Výpočetní uzly mimo vaši virtuální síť nemají přístup k vaší virtuální síti, pokud nenakonfigurujete zabezpečení tak, aby povolovali přístup.

Koncový bod služby virtuální sítě:Koncový bod služby virtuální sítě je podsíť, jejíž hodnoty vlastností obsahují jeden nebo více formálních názvů typů služeb Azure. V tomto článku nás zajímá název typu Microsoft.Sql, který odkazuje na službu Azure s názvem SQL Database.

Pravidlo virtuální sítě: Pravidlo virtuální sítě pro váš server je podsíť uvedená v seznamu řízení přístupu (ACL) vašeho serveru. Aby byla v seznamu ACL pro vaši databázi ve službě SQL Database, musí podsíť obsahovat název typu Microsoft.Sql . Pravidlo virtuální sítě říká vašemu serveru, aby přijímal komunikaci z každého uzlu, který je v podsíti.

IP adresa versus pravidla brány firewall virtuální sítě

Brána firewall služby Azure SQL Database umožňuje zadat rozsahy IP adres, ze kterých se komunikace přijímá do služby SQL Database. Tento přístup je v pořádku pro stabilní IP adresy, které jsou mimo privátní síť Azure. Virtuální počítače v privátní síti Azure jsou ale nakonfigurované s dynamickými IP adresami. Dynamické IP adresy se můžou při restartování virtuálního počítače změnit a zneplatnit pravidlo brány firewall založené na PROTOKOLU IP. V produkčním prostředí by bylo hloupé zadat dynamickou IP adresu v pravidlu brány firewall.

Toto omezení můžete obejít získáním statické IP adresy pro virtuální počítač. Podrobnosti najdete v tématu Vytvoření virtuálního počítače se statickou veřejnou IP adresou pomocí webu Azure Portal. Přístup ke statickým IP adresům se ale může obtížně spravovat a je nákladný, když se provádí ve velkém měřítku.

Pravidla virtuální sítě jsou jednodušší alternativou k vytvoření a správě přístupu z konkrétní podsítě, která obsahuje vaše virtuální počítače.

Poznámka:

Sql Database zatím nemůžete mít v podsíti. Pokud byl váš server uzlem v podsíti ve vaší virtuální síti, mohly by všechny uzly ve virtuální síti komunikovat s vaší službou SQL Database. V takovém případě můžou vaše virtuální počítače komunikovat se službou SQL Database, aniž by potřebovaly žádná pravidla virtuální sítě nebo pravidla PROTOKOLU IP.

Private Link umožňuje připojení k serveru přes privátní koncový bod. Privátní koncový bod je privátní IP adresa v rámci konkrétní virtuální sítě a podsítě.

Další kroky