Azure SQL Veritabanı ve Azure Synapse Analytics ağ erişim denetimleri

Şunlar için geçerlidir:Azure SQL Veritabanı Azure Synapse Analytics (yalnızca ayrılmış SQL havuzları)

Azure SQL Veritabanı ve Azure Synapse Analytics için Azure portalından bir mantıksal sunucu oluşturduğunuzda, sonuç yourservername.database.windows.net biçiminde bir genel uç noktadır.

Aşağıdaki ağ erişim denetimlerini kullanarak genel uç nokta üzerinden veritabanına seçmeli olarak erişime izin vekleyebilirsiniz:

  • Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver: Etkinleştirildiğinde, Azure sınırındaki diğer kaynaklara (örneğin bir Azure Sanal Makinesi) SQL Veritabanı
  • IP güvenlik duvarı kuralları: Bu özelliği, örneğin şirket içi makinelerden belirli bir IP adresinden gelen bağlantılara açıkça izin vermek için kullanın

Aşağıdakiler aracılığıyla sanal ağlardan veritabanına özel erişime de izin vekleyebilirsiniz:

Önemli

Bu makale SQL Yönetilen Örneği için geçerli değildir. Ağ yapılandırması hakkında daha fazla bilgi için bkz. Azure SQL Yönetilen Örneği bağlanma.

Bu erişim denetimlerinin ve bunların ne yaptığının üst düzey açıklaması için aşağıdaki videoya bakın:

Azure hizmetlerine izin ver

Varsayılan olarak, Azure portalından yeni bir mantıksal sunucu oluşturulurken Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver seçeneği işaretlenmez ve etkinleştirilmez. Bu ayar, genel hizmet uç noktası kullanılarak bağlantıya izin verildiğinde görüntülenir.

Mantıksal sunucu oluşturulduktan sonra ağ ayarı aracılığıyla da bu ayarı aşağıdaki gibi değiştirebilirsiniz:

Screenshot of manage server firewall

Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver etkinleştirildiğinde, sunucunuz Azure sınırı içindeki tüm kaynaklardan gelen, aboneliğinizin parçası olabilecek veya olmayan iletişimlere izin verir.

Çoğu durumda, ayarın etkinleştirilmesi çoğu müşterinin isteğinden daha izin verir. Bu ayarın işaretini kaldırıp daha kısıtlayıcı IP güvenlik duvarı kuralları veya sanal ağ güvenlik duvarı kurallarıyla değiştirmek isteyebilirsiniz.

Ancak bunu yapmak, Azure'da sanal ağınızın parçası olmayan sanal makinelerde çalışan ve bu nedenle bir Azure IP adresi aracılığıyla veritabanına bağlanan aşağıdaki özellikleri etkiler:

İçeri Dışarı Aktarma Hizmeti

Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver etkinleştirilmediğinde İçeri Aktarma Hizmeti çalışmıyor. Ancak SqlPackage'ı bir Azure VM'den el ile çalıştırarak veya DACFx API'sini kullanarak doğrudan kodunuzda dışarı aktarma gerçekleştirerek sorunu çözebilirsiniz.

Data Sync

Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver özelliği etkinleştirilmemiş olarak Veri eşitleme özelliğini kullanmak için, Hub veritabanını barındıran bölgenin Sql hizmet etiketinden IP adresleri eklemek üzere tek tek güvenlik duvarı kuralı girdileri oluşturmanız gerekir. Bu sunucu düzeyindeki güvenlik duvarı kurallarını hem Hubhem de Üye veritabanlarını barındıran sunuculara ekleyin (farklı bölgelerde olabilir)

Batı ABD bölgesinin SQL hizmet etiketine karşılık gelen IP adreslerini oluşturmak için aşağıdaki PowerShell betiğini kullanın

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

Bahşiş

Get-AzNetworkServiceTag, Location parametresi belirtilmesine rağmen SQL Hizmet Etiketi için genel aralığı döndürür. Eşitleme grubunuz tarafından kullanılan Hub veritabanını barındıran bölgeye göre filtrelemeyi unutmayın

PowerShell betiğinin çıkışının Sınıfsız Etki Alanları Arası Yönlendirme (CIDR) gösteriminde olduğunu unutmayın. Bunun Get-IPrangeStartEnd.ps1 kullanılarak Başlangıç ve Bitiş IP adresi biçimine dönüştürülmesi gerekir:

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

Tüm IP adreslerini CIDR'den Başlangıç ve Bitiş IP adresi biçimine dönüştürmek için bu ek PowerShell betiğini kullanabilirsiniz.

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

Artık bunları ayrı güvenlik duvarı kuralları olarak ekleyebilir ve ardından Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver ayarını devre dışı bırakabilirsiniz.

IP güvenlik duvarı kuralları

IP tabanlı güvenlik duvarı, siz istemci makinelerinin IP adreslerini açıkça ekleyene kadar sunucunuza tüm erişimi engelleyen Azure'daki mantıksal sunucunun bir özelliğidir.

Sanal ağ güvenlik duvarı kuralları

IP kurallarına ek olarak, sunucu güvenlik duvarı sanal ağ kurallarını tanımlamanızı sağlar. Daha fazla bilgi edinmek için bkz. Azure SQL Veritabanı için sanal ağ hizmet uç noktaları ve kuralları.

Azure Ağ terminolojisi

Sanal ağ güvenlik duvarı kurallarını keşfederken aşağıdaki Azure Ağ terimlerine dikkat edin

Sanal ağ: Azure aboneliğinizle ilişkilendirilmiş sanal ağlarınız olabilir

Alt ağ: Sanal ağ alt ağlar içerir. Sahip olduğunuz tüm Azure sanal makineleri (VM' ler) alt ağlara atanır. Bir alt ağ birden çok VM veya başka işlem düğümü içerebilir. Güvenliğinizi erişime izin verecek şekilde yapılandırmadığınız sürece sanal ağınızın dışındaki işlem düğümleri sanal ağınıza erişemez.

Sanal ağ hizmet uç noktası:Sanal ağ hizmet uç noktası , özellik değerleri bir veya daha fazla resmi Azure hizmet türü adı içeren bir alt ağdır. Bu makalede, SQL Veritabanı adlı Azure hizmetine başvuran Microsoft.Sql tür adıyla ilgileniyoruz.

Sanal ağ kuralı: Sunucunuz için sanal ağ kuralı, sunucunuzun erişim denetimi listesinde (ACL) listelenen bir alt ağdır. SQL Veritabanı'da veritabanınızın ACL'sinde yer almak için alt ağ Microsoft.Sql tür adını içermelidir. Sanal ağ kuralı sunucunuza alt ağdaki her düğümden gelen iletişimleri kabul etmelerini söyler.

IP ve Sanal ağ güvenlik duvarı kuralları karşılaştırması

Azure SQL Veritabanı güvenlik duvarı, iletişimlerin SQL Veritabanı kabul edildiği IP adresi aralıklarını belirtmenize olanak tanır. Bu yaklaşım, Azure özel ağının dışındaki kararlı IP adresleri için uygundur. Ancak, Azure özel ağı içindeki sanal makineler (VM) dinamik IP adresleriyle yapılandırılır. Vm'niz yeniden başlatıldığında dinamik IP adresleri değişebilir ve bu durumda IP tabanlı güvenlik duvarı kuralı geçersiz kılınabilir. Üretim ortamında bir güvenlik duvarı kuralında dinamik IP adresi belirtmek çok kolay olabilir.

Vm'niz için statik bir IP adresi alarak bu sınırlamaya geçici bir çözüm bulabilirsiniz. Ayrıntılar için bkz . Azure portalını kullanarak statik genel IP adresiyle sanal makine oluşturma. Bununla birlikte, statik IP yaklaşımının yönetilmesi zor olabilir ve büyük ölçekte tamamlandığında maliyetlidir.

Sanal ağ kuralları, VM'lerinizi içeren belirli bir alt ağdan erişimi oluşturmak ve yönetmek için daha kolay bir alternatiftir.

Dekont

Henüz bir alt ağda SQL Veritabanı sahip olamazsınız. Sunucunuz sanal ağınızdaki bir alt ağda bulunan bir düğümse, sanal ağınızdaki tüm düğümler SQL Veritabanı ile iletişim kurabilir. Bu durumda VM'leriniz herhangi bir sanal ağ kuralına veya IP kuralına gerek kalmadan SQL Veritabanı ile iletişim kurabilir.

Özel Bağlantı özel uç nokta üzerinden bir sunucuya bağlanmanızı sağlar. Özel uç nokta, belirli bir sanal ağ ve Alt ağ içindeki özel bir IP adresidir.

Sonraki adımlar