Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Tip
Microsoft Fabric Data Warehouse geleceğe hazır mimariye, yerleşik yapay zekaya ve yeni özelliklere sahip data lake foundation üzerinde kurumsal ölçekli ilişkisel bir ambardır. Veri ambarı konusunda yeniyseniz Fabric Data Warehouse ile başlayın. Mevcut adanan SQL havuzu iş yükleri, veri bilimi, gerçek zamanlı analiz ve raporlama genelinde yeni özelliklere erişmek için Fabric sürümüne yükseltilebilir.
Bu makale, ayrılmış SQL havuzunuzun (eski adı SQL DW) güvenliğini sağlamanın temellerini size gösterecektir. Bu makale özellikle erişimi sınırlama, verileri koruma ve ayrılmış SQL havuzu (eski adı SQL DW) kullanarak etkinlikleri izleme kaynaklarıyla çalışmaya başlamanızı sağlar.
Bağlantı güvenliği
Bağlantı Güvenliği, güvenlik duvarı kurallarını ve bağlantı şifrelemesini kullanarak veritabanınıza yönelik bağlantıları nasıl kısıtlayıp güvenli bir şekilde bağlayabileceğinizi ifade eder.
Güvenlik duvarı kuralları hem mantıksal SQL sunucusu hem de veritabanları tarafından açıkça onaylanmamış IP adreslerinden gelen bağlantı girişimlerini reddetmek için kullanılır. Uygulamanızın veya istemci makinenizin genel IP adresinden bağlantılara izin vermek için önce Azure portalını, REST API'yi veya PowerShell'i kullanarak sunucu düzeyinde bir güvenlik duvarı kuralı oluşturmanız gerekir.
En iyi yöntem olarak, sunucu düzeyinde güvenlik duvarınız üzerinden izin verilen IP adresi aralıklarını mümkün olduğunca kısıtlamanız gerekir. Yerel bilgisayarınızdan ayrılmış SQL havuzunuza (eski adı SQL DW) erişmek için, ağınızdaki ve yerel bilgisayarınızdaki güvenlik duvarının 1433 numaralı TCP bağlantı noktasında giden iletişime izin verdiğinden emin olun.
Ayrılmış SQL havuzu (eski adıYLA SQL DW), sunucu düzeyinde IP güvenlik duvarı kurallarını kullanır. Veritabanı düzeyinde IP güvenlik duvarı kurallarını desteklemez. Daha fazla bilgi için bkz. Azure SQL Veritabanı güvenlik duvarı kuralları
Ayrılmış SQL havuzunuza (eski adı SQL DW) yönelik bağlantılar varsayılan olarak şifrelenir. Şifrelemeyi devre dışı bırakmak için bağlantı ayarlarının değiştirilmesi yoksayılır.
Kimlik doğrulama
Kimlik doğrulaması, veritabanına bağlanırken kimliğinizi nasıl kanıtlayabileceğinizi ifade eder. Ayrılmış SQL havuzu (eski adı SQL DW), şu anda kullanıcı adı ve parola ile ve Microsoft Entra Id ile SQL Server Kimlik Doğrulamasını destekler.
Veritabanınız için sunucuyu oluşturduğunuzda, kullanıcı adı ve parolayla bir "sunucu yöneticisi" oturum açma bilgisi belirttiniz. Bu kimlik bilgilerini kullanarak, bu sunucudaki herhangi bir veritabanına veritabanı sahibi veya "dbo" olarak, SQL Server Kimlik Doğrulaması yoluyla, erişim sağlayarak kimliğinizi doğrulayabilirsiniz.
Ancak, en iyi uygulama olarak, kuruluşunuzun kullanıcıları kimlik doğrulaması için farklı bir hesap kullanmalıdır. Bu şekilde uygulamaya verilen izinleri sınırlandırabilir ve uygulama kodunuzun SQL ekleme saldırısına karşı savunmasız olması durumunda kötü amaçlı etkinlik risklerini azaltabilirsiniz.
SQL Server Kimliği Doğrulanmış kullanıcı oluşturmak için sunucu yöneticinizin oturum açma bilgileriyle sunucunuzdaki ana veritabanına bağlanın ve yeni bir sunucu oturumu oluşturun. Ana veritabanında bir kullanıcı da oluşturmak iyi bir fikirdir. "Master'da bir kullanıcı oluşturmak, bir kullanıcının veritabanı adı belirtmeden SSMS gibi araçları kullanarak oturum açmasına olanak tanır." Ayrıca bir sunucudaki tüm veritabanlarını görüntülemek için nesne gezginini kullanmalarına da olanak tanır.
-- Connect to master database and create a login
CREATE LOGIN ApplicationLogin WITH PASSWORD = 'Str0ng_password';
CREATE USER ApplicationUser FOR LOGIN ApplicationLogin;
Ardından, sunucu yöneticisi oturum açma bilgilerinizle ayrılmış SQL havuzunuza (eski adı SQL DW) bağlanın ve oluşturduğunuz sunucu oturum açma bilgilerini temel alan bir veritabanı kullanıcısı oluşturun.
-- Connect to the database and create a database user
CREATE USER ApplicationUser FOR LOGIN ApplicationLogin;
Kullanıcıya oturum açma bilgileri oluşturma veya yeni veritabanları oluşturma gibi ek işlemler gerçekleştirme izni vermek için kullanıcıyı ana veritabanında ve Loginmanagerdbmanager rollerine atayın.
Bu ek roller hakkında daha fazla bilgi edinmek ve SQL Veritabanı'nda kimlik doğrulaması yapmak için bkz. Azure SQL Veritabanı'nda veritabanlarını ve oturum açma bilgilerini yönetme. Microsoft Entra Id kullanarak bağlanma hakkında daha fazla bilgi için bkz. Microsoft Entra kimlik doğrulamasını kullanarak bağlanma.
İzin
Yetkilendirme, kimliğiniz doğrulanıp bağlandıktan sonra veritabanında neler yapabileceğinizi ifade eder. Yetkilendirme ayrıcalıkları rol üyelikleri ve izinlerine göre belirlenir. En iyi uygulama olarak, kullanıcılara gereken en düşük ayrıcalıkları vermelisiniz. Rolleri yönetmek için aşağıdaki saklı yordamları kullanabilirsiniz:
EXEC sp_addrolemember 'db_datareader', 'ApplicationUser'; -- allows ApplicationUser to read data
EXEC sp_addrolemember 'db_datawriter', 'ApplicationUser'; -- allows ApplicationUser to write data
Bağlandığınız sunucu yöneticisi hesabı, veritabanı içinde herhangi bir şey yapma yetkisi olan db_owner üyesidir. Şema yükseltmelerini ve diğer yönetim işlemlerini dağıtmak için bu hesabı kaydedin. Uygulamanızdan veritabanına, uygulamanız için gereken en düşük ayrıcalıklarla bağlanmak için daha sınırlı izinlere sahip "ApplicationUser" hesabını kullanın.
Kullanıcının veritabanında yapabileceklerini daha fazla sınırlamanın yolları vardır:
- Ayrıntılı İzinler, tek tek sütunlar, tablolar, görünümler , şemalar, yordamlar ve veritabanındaki diğer nesneler üzerinde hangi işlemleri yapabileceğinizi denetlemenize olanak sağlar. En fazla denetime sahip olmak ve gerekli minimum izinleri vermek için ayrıntılı izinleri kullanın.
- db_datareader ve db_datawriter dışındaki veritabanı rolleri, daha güçlü uygulama kullanıcı hesapları veya daha az güçlü yönetim hesapları oluşturmak için kullanılabilir. Yerleşik sabit veritabanı rolleri izin vermek için kolay bir yol sağlar, ancak gerekenden daha fazla izin verilmesine neden olabilir.
- Saklı yordamlar , veritabanında gerçekleştirilebilecek eylemleri sınırlamak için kullanılabilir.
Aşağıdaki örnek, kullanıcı tanımlı bir şemaya okuma erişimi verir.
--CREATE SCHEMA Test
GRANT SELECT ON SCHEMA::Test to ApplicationUser
Veritabanlarını ve sunucuları Azure portalından yönetme veya Azure Resource Manager API'sini kullanma, portal kullanıcı hesabınızın rol atamaları tarafından denetlenmektedir. Daha fazla bilgi edinmek için bkz. Azure portal kullanarak Azure rolleri atama.
Satır düzeyi güvenlik
Row-Level Güvenliği, bir sorguyu yürüten kullanıcının özelliklerine (örneğin, grup üyeliği veya yürütme bağlamı) göre veritabanı tablosundaki satırlara erişimi denetlemenizi sağlar. Özel Etiket tabanlı güvenlik kavramlarını uygulamak için Row-Level Güvenliği kullanın. Daha fazla bilgi için bkz. Satır düzeyi güvenlik.
Şifreleme
Saydam Veri Şifrelemesi (TDE), beklemedeki verilerinizi şifreleyip şifrelerini çözerek kötü niyetli faaliyetlere karşı koruma sağlamaya yardımcı olur. Veritabanınızı şifrelediğinizde, ilişkili yedeklemeler ve işlem günlüğü dosyaları uygulamalarınızda herhangi bir değişiklik gerektirmeden şifrelenir. TDE, veritabanı şifreleme anahtarı adı verilen bir simetrik anahtar kullanarak veritabanının tamamının depolamasını şifreler.
SQL Veritabanı'nda, veritabanı şifreleme anahtarı yerleşik bir sunucu sertifikasıyla korunur. Yerleşik sunucu sertifikası her sunucu için benzersizdir. Microsoft bu sertifikaları en az 90 günde bir otomatik olarak döndürür. Kullanılan şifreleme algoritması AES-256'dır. TDE'nin genel açıklaması için bkz . Saydam Veri Şifrelemesi.
Azure portalını veya T-SQL'i kullanarak veritabanınızı şifreleyebilirsiniz.
Müşteri tarafından yönetilen anahtarlarla saydam veri şifrelemesi (bekleyen şifreleme)
Şifreleme anahtarları üzerinde daha fazla kontrol istiyorsanız, Saydam Veri Şifrelemesi for Azure Synapse Analyticsmüşteri tarafından yönetilen anahtarları (CMK) destekler. Bu CMK mantıksal sunucuyla ilişkilendirilir ve bu sunucudaki tüm veritabanları için veritabanı şifreleme anahtarlarını sarmalar. CMK'yi yöneterek, genellikle uyumluluk veya katı güvenlik ilkeleri için gerekli olan anahtar döndürmeyi, iptali ve denetimi denetleyebilirsiniz.
Aktarım Katmanı Güvenliği (aktarım sırasında şifreleme)
Azure Synapse Analytics, hareket halindeki verileri Transport Layer Security (TLS) ile şifreleyerek müşteri verilerini güvence altına alır. Azure Synapse Analytics, tüm verilerin istemci ile sunucu arasında geçiş sırasında şifrelendiğinden emin olmak için her zaman TLS şifreli bağlantıları zorunlu kılar.
Azure Synapse Analytics özellikle yapılandırma bayrağını ForceEncryption olarak Yes ayarlar. İstemci ve sürücüler, bu hizmete bağlanmak için şifreli bağlantıları desteklemelidir. TDS protokolünün bağlanabilen en düşük sürümü TDS 7.1'dir.
En iyi yöntem olarak, TDS 8.0 özellikli SQL sürücüleriniz varsa Katı bağlantı şifrelemesi kullanın.
Sürücüleriniz TDS 8.0'ı desteklemiyorsa zorunlu şifreleme kullanın ve sunucu sertifikasına güvenmeyin. Örneğin, ADO.NET sürücüsünü kullanırken, bunu gerçekleştirmek için bağlantı dizesinde Encrypt=True ve TrustServerCertificate=False kullanın. Azure portalından edindiğiniz bağlantı dizesi bu değerlerle zaten yapılandırılmıştır.
Üretim kullanımında parametresini TrustServerCertificate olarak True ayarlamaktan kaçının.
TrustServerCertificate=True çok izinli ve ortadaki adam saldırılarına karşı korumaz. Bunun yerine, istemciniz sunucu sertifikasında farklı bir etki alanı adı bekliyorsa, doğrulama için doğru etki alanı adını sağlamak amacıyla HostNameInCertificate parametresini kullanın.
Important
Microsoft dışı bazı sürücüler varsayılan olarak TLS kullanmayabilir veya çalışması için eski bir TLS sürümüne (1.2'den önceki) bağımlı olabilir. Bu durumda, sunucu yine de veritabanınıza bağlanmanıza izin verir. Ancak, özellikle hassas verileri depolıyorsanız, bu tür sürücüler ve uygulamaların bağlanmasına izin vermenin güvenlik risklerini değerlendirin.
Sonraki adımlar
Farklı protokollerle ambarınıza bağlanma hakkında ayrıntılar ve örnekler için bkz. Ayrılmış SQL havuzuna (eski adı SQL DW) bağlanma.