Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği ile ortak güvenlik gereksinimlerini karşılamaya yönelik Playbook

Şunlar için geçerlidir:Azure SQL Veritabanı Azure SQL Yönetilen Örneği

Bu makalede, yaygın güvenlik gereksinimlerini çözmeye yönelik en iyi yöntemler sağlanmaktadır. Tüm gereksinimler tüm ortamlar için geçerli değildir ve hangi özelliklerin uygulandığı konusunda veritabanınıza ve güvenlik ekibinize danışmanız gerekir.

Not

Microsoft Entra Id daha önce Azure Active Directory (Azure AD) olarak biliniyordu.

Yaygın güvenlik gereksinimlerini çözme

Bu belge, Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği kullanarak yeni veya mevcut uygulamalar için genel güvenlik gereksinimlerini çözme konusunda rehberlik sağlar. Üst düzey güvenlik alanlarına göre düzenlenmiştir. Belirli tehditleri ele almak için Ortak güvenlik tehditleri ve olası risk azaltmalar bölümüne bakın. Sunulan önerilerden bazıları, uygulamaları şirket içinden Azure'a geçirirken geçerli olsa da, geçiş senaryoları bu belgenin odağı değildir.

Bu kılavuzda ele alınan Azure SQL Veritabanı dağıtım teklifleri

Bu kılavuzda ele alınmayan dağıtım teklifleri

  • Azure Synapse Analytics
  • Azure SQL VM'leri (IaaS)
  • SQL Server

Hedef Kitle

Bu kılavuzun hedef kitleleri, müşteriler Azure SQL Veritabanı güvenliğini sağlama konusunda sorularla karşılaşıyor. Bu en iyi uygulama makalesine ilgi duyan roller şunlardır ancak bunlarla sınırlı değildir:

  • Güvenlik Mimarları
  • Güvenlik Yöneticileri
  • Uyumluluk Memurları
  • Gizlilik Görevlileri
  • Güvenlik Mühendisleri

Bu kılavuzu kullanma

Bu belge, mevcut Azure SQL Veritabanı güvenlik belgelerimizin bir eşlikçisi olarak tasarlanmıştır.

Aksi belirtilmediği sürece, ilgili hedefe veya gereksinime ulaşmak için her bölümde listelenen tüm en iyi yöntemleri izlemenizi öneririz. Belirli güvenlik uyumluluk standartlarını veya en iyi uygulamaları karşılamak için, önemli mevzuat uyumluluğu denetimleri uygun olan her yerde Gereksinimler veya Hedefler bölümünde listelenir. Bu makalede bahsedilen güvenlik standartları ve düzenlemeleri şunlardır:

Burada listelenen önerileri ve en iyi yöntemleri güncelleştirmeyi planlıyoruz. Bu makalenin altındaki Geri Bildirim bağlantısını kullanarak bu belge için giriş veya düzeltmeler sağlayın.

Kimlik Doğrulaması

Kimlik doğrulaması , kullanıcının iddia ettiği kişi olduğunu kanıtlama işlemidir. Azure SQL Veritabanı ve SQL Yönetilen Örneği iki kimlik doğrulama türünü destekler:

  • SQL kimlik doğrulaması
  • Microsoft Entra doğrulaması

Not

Microsoft Entra kimlik doğrulaması tüm araçlar ve üçüncü taraf uygulamalar için desteklenmeyebilir.

Kimlikler için merkezi yönetim

Merkezi kimlik yönetimi aşağıdaki avantajları sunar:

  • Sunucularda, veritabanlarında ve yönetilen örneklerde oturum açma işlemlerini yinelemeden grup hesaplarını yönetin ve kullanıcı izinlerini denetleyin.
  • Basitleştirilmiş ve esnek izin yönetimi.
  • Büyük ölçekte uygulamaların yönetimi.

Uygulama

  • Merkezi kimlik yönetimi için Microsoft Entra kimlik doğrulamasını kullanın.

En iyi uygulamalar

  • Bir Microsoft Entra kiracısı oluşturun ve insan kullanıcıları temsil eden kullanıcılar oluşturun ve uygulamaları, hizmetleri ve otomasyon araçlarını temsil eden hizmet sorumluları oluşturun. Hizmet sorumluları, Windows ve Linux'taki hizmet hesaplarıyla eşdeğerdir.

  • Grup ataması aracılığıyla Microsoft Entra sorumlularına kaynaklara erişim hakları atama: Microsoft Entra grupları oluşturun, gruplara erişim verin ve gruplara tek tek üyeler ekleyin. Veritabanınızda, Microsoft Entra gruplarınıza eşlenen bağımsız veritabanı kullanıcıları oluşturun. Veritabanı içinde izin atamak için, gruplarınızı temsil eden kapsanan veritabanı kullanıcılarını veritabanı rollerine ekleyin veya bunlara doğrudan izin verin.

    • SQL ile Microsoft Entra kimlik doğrulamasını yapılandırma ve yönetme ve SQL ile Microsoft Entra kimlik doğrulamasını kullanma makalelerine bakın.

    Not

    SQL Yönetilen Örneği'da, veritabanındaki Microsoft Entra sorumlularıyla master eşleyen oturum açma bilgileri de oluşturabilirsiniz. Bkz . CREATE LOGIN (Transact-SQL).

  • Microsoft Entra gruplarının kullanılması izin yönetimini ve hem grup sahibini basitleştirir hem de kaynak sahibi gruba üye ekleyebilir/gruptan üye kaldırabilir.

  • Her sunucu veya yönetilen örnek için Microsoft Entra yöneticileri için ayrı bir grup oluşturun.

  • Microsoft Entra Id denetim etkinlik raporlarını kullanarak Microsoft Entra grup üyeliği değişikliklerini izleyin.

  • Yönetilen örnek için, Microsoft Entra yöneticisi oluşturmak için ayrı bir adım gerekir.

Not

  • Microsoft Entra kimlik doğrulaması Azure SQL denetim günlüklerine kaydedilir, ancak Microsoft Entra oturum açma günlüklerine kaydedilmez.
  • Azure'da verilen Azure RBAC izinleri Azure SQL Veritabanı veya SQL Yönetilen Örneği izinleri için geçerli değildir. Bu tür izinler mevcut SQL izinleri kullanılarak el ile oluşturulmalıdır/eşlenmelidir.
  • İstemci tarafında, Microsoft Entra kimlik doğrulamasının İnternet'e veya Kullanıcı Tanımlı Yol (UDR) üzerinden bir sanal ağa erişmesi gerekir.
  • Microsoft Entra erişim belirteci istemci tarafında önbelleğe alınır ve yaşam süresi belirteç yapılandırmasına bağlıdır. Microsoft Entra Id'de yapılandırılabilir belirteç ömrü makalesine bakın
  • Microsoft Entra kimlik doğrulaması sorunlarını giderme yönergeleri için şu bloga bakın: Microsoft Entra Kimliği Sorunlarını Giderme.

Microsoft Entra çok faktörlü kimlik doğrulaması

Bahsedilenler: OSA Uygulaması #2, ISO Erişim Denetimi (AC)

Microsoft Entra çok faktörlü kimlik doğrulaması, birden fazla kimlik doğrulama biçimi gerektirerek ek güvenlik sağlamaya yardımcı olur.

Uygulama

En iyi uygulamalar

  • Microsoft Entra Id'de Koşullu Erişimi etkinleştirin (Premium abonelik gerektirir).

  • Microsoft Entra grupları oluşturun ve Microsoft Entra Koşullu Erişim'i kullanarak seçili gruplar için çok faktörlü kimlik doğrulama ilkesini etkinleştirin.

  • Çok faktörlü kimlik doğrulaması, Microsoft Entra kiracısının tamamı veya Microsoft Entra Kimliği ile birleştirilmiş Active Directory için etkinleştirilebilir.

  • Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği için Microsoft Entra etkileşimli kimlik doğrulama modunu kullanın. Burada parola etkileşimli olarak istenir ve ardından çok faktörlü kimlik doğrulaması yapılır:

  • Çok faktörlü kimlik doğrulama desteğiyle etkileşimli kimlik doğrulaması kullanarak Azure SQL Veritabanı veya Azure SQL Yönetilen Örneği bağlanmak için uygulamalarınızı uygulayın.

    Not

    Bu kimlik doğrulama modu kullanıcı tabanlı kimlikler gerektirir. Tek tek Microsoft Entra kullanıcı kimlik doğrulamasını (örneğin, Azure kaynakları için yönetilen kimlik kullanarak) atlayan güvenilir bir kimlik modelinin kullanıldığı durumlarda, çok faktörlü kimlik doğrulaması uygulanmaz.

Kullanıcılar için parola tabanlı kimlik doğrulaması kullanımını en aza indirme

Bahsedilenler: OSA Uygulaması #4, ISO Erişim Denetimi (AC)

Parola tabanlı kimlik doğrulama yöntemleri daha zayıf bir kimlik doğrulaması biçimidir. Kimlik bilgileri tehlikeye girebilir veya yanlışlıkla verilebilir.

Uygulama

  • Parola kullanımını ortadan kaldıran Microsoft Entra tümleşik kimlik doğrulamasını kullanın.

En iyi uygulamalar

  • Windows kimlik bilgilerini kullanarak çoklu oturum açma kimlik doğrulamasını kullanın. şirket içi Active Directory etki alanını Microsoft Entra Id ile birleştirin ve tümleşik Windows kimlik doğrulamasını kullanın (Microsoft Entra Id ile etki alanına katılmış makineler için).

Uygulamalar için parola tabanlı kimlik doğrulaması kullanımını en aza indirme

Bahsedilenler: OSA Uygulaması #4, ISO Erişim Denetimi (AC)

Uygulama

  • Azure Yönetilen Kimlik'i etkinleştirin. Tümleşik veya sertifika tabanlı kimlik doğrulamayı da kullanabilirsiniz.

En iyi uygulamalar

Parolaları ve gizli dizileri koruma

Parolaların engellenemez olduğu durumlarda, parolaların güvenli olduğundan emin olun.

Uygulama

  • Parolaları ve gizli dizileri depolamak için Azure Key Vault'ı kullanın. Uygun olduğunda, Microsoft Entra kullanıcıları ile Azure SQL Veritabanı için çok faktörlü kimlik doğrulamasını kullanın.

En iyi uygulamalar

  • Parolalardan veya gizli dizilerden kaçınmak mümkün değilse kullanıcı parolalarını ve uygulama gizli dizilerini Azure Key Vault'ta depolayın ve Key Vault erişim ilkeleri aracılığıyla erişimi yönetin.

  • Çeşitli uygulama geliştirme çerçeveleri, uygulamadaki gizli dizileri korumaya yönelik çerçeveye özgü mekanizmalar da sunabilir. Örneğin: ASP.NET çekirdek uygulama.

Eski uygulamalar için SQL kimlik doğrulamasını kullanma

SQL kimlik doğrulaması, kullanıcı adı ve parola kullanarak Azure SQL Veritabanı veya SQL Yönetilen Örneği bağlanırken kullanıcının kimlik doğrulamasını ifade eder. Her sunucuda veya yönetilen örnekte bir oturum açma ve her veritabanında oluşturulan bir kullanıcı oluşturulması gerekir.

Uygulama

  • SQL kimlik doğrulamayı kullanın.

En iyi uygulamalar

  • Sunucu veya örnek yöneticisi olarak oturum açma bilgileri ve kullanıcılar oluşturun. Bağımsız veritabanı kullanıcılarını parolalarla kullanmadığınız sürece, tüm parolalar veritabanında master depolanır.

Erişim yönetimi

Erişim yönetimi (Yetkilendirme olarak da adlandırılır), yetkili kullanıcıların Azure SQL Veritabanı veya SQL Yönetilen Örneği erişim ve ayrıcalıklarını denetleme ve yönetme işlemidir.

En az ayrıcalık ilkesini uygulama

Belirtilenler: FedRamp, AC-06, NIST: AC-6, OSA Uygulaması #3'te denetimler

En düşük ayrıcalık ilkesi, kullanıcıların görevlerini tamamlamak için gerekenden daha fazla ayrıcalığı olmaması gerektiğini belirtir. Daha fazla bilgi için Yeterli yönetim makalesine bakın.

Uygulama

Gerekli görevleri tamamlamak için yalnızca gerekli izinleri atayın:

En iyi uygulamalar

Aşağıdaki en iyi yöntemler isteğe bağlıdır ancak güvenlik stratejinizin daha iyi yönetilebilirliği ve desteklenebilirliğiyle sonuçlanır:

  • Mümkünse, mümkün olan en az izin kümesiyle başlayın ve karşıt yaklaşımın aksine gerçek bir gereklilik (ve gerekçe) varsa izinleri birer birer eklemeye başlayın: izinleri adım adım ortadan kaldırır.

  • Tek tek kullanıcılara izin atamaktan kaçının. Bunun yerine rolleri (veritabanı veya sunucu rolleri) tutarlı bir şekilde kullanın. Roller, raporlama ve sorun giderme izinlerine büyük ölçüde yardımcı olur. (Azure RBAC yalnızca roller aracılığıyla izin atamayı destekler.)

  • Tam olarak gereken izinlerle özel roller oluşturun ve kullanın. Uygulamada kullanılan tipik roller:

    • Güvenlik dağıtımı
    • Yönetici
    • Geliştirici
    • Destek personeli
    • Denetleyici
    • Otomatik işlemler
    • Son kullanıcı
  • Yerleşik rolleri yalnızca rollerin izinleri kullanıcı için gereken izinlerle tam olarak eşleştiğinde kullanın. Kullanıcıları birden çok rollere atayabilirsiniz.

  • Veritabanı altyapısındaki izinlerin aşağıdaki kapsamlar içinde uygulanabileceğini unutmayın (kapsam ne kadar küçükse, verilen izinlerin etkisi de o kadar küçüktür):

    • Azure'da sunucu (veritabanındaki master özel roller)
    • Veritabanı
    • Şema
      • Bir veritabanı içinde izin vermek için şemaları kullanmak en iyi yöntemdir.
    • Nesne (tablo, görünüm, yordam vb.)

    Not

    Bu düzey genel uygulamaya gereksiz karmaşıklık kattığı için nesne düzeyinde izinlerin uygulanması önerilmez. Nesne düzeyi izinleri kullanmaya karar verirseniz, bunlar açıkça belgelenmelidir. Aynı durum sütun düzeyi izinler için de geçerlidir ve aynı nedenlerle daha da az önerilir. Ayrıca, varsayılan olarak tablo düzeyi DENY'in sütun düzeyi GRANT'i geçersiz kılmadığını unutmayın. Bunun için ortak ölçüt uyumluluğu Sunucu Yapılandırması'nın etkinleştirilmesi gerekir.

  • Çok fazla izin için test etmek için Güvenlik Açığı Değerlendirmesi'ne (VA) göre düzenli denetimler gerçekleştirin.

Görev Ayrımını Uygulama

Bahsedilenler: FedRamp: AC-04, NIST: AC-5, ISO: A.6.1.2, PCI 6.4.2, SOC: CM-3, SDL-3

Görevlerin Ayrılması olarak da adlandırılan Görev Ayrımı, hassas görevleri farklı kullanıcılara atanan birden çok göreve bölme gereksinimini açıklar. Görev Ayrımı, veri ihlallerinin önlenmesine yardımcı olur.

Uygulama

  • Gerekli Görev Ayrımı düzeyini belirleyin. Örnekler:

    • Geliştirme/Test ve Üretim ortamları arasında
    • Güvenlik açısından hassas görevler ve Veritabanı Yönetici istrator (DBA) yönetim düzeyi görevleri ile geliştirici görevleri karşılaştırması.
      • Örnekler: Denetçi, Rol Düzeyi Güvenlik (RLS) için güvenlik ilkesi oluşturma, DDL izinleriyle SQL Veritabanı nesneleri uygulama.
  • Sisteme erişen kapsamlı bir kullanıcı hiyerarşisini (ve otomatik işlemleri) belirleyin.

  • Gerekli kullanıcı gruplarına göre roller oluşturun ve rollere izinler atayın.

    • Azure portalında veya PowerShell otomasyonu aracılığıyla yönetim düzeyinde görevler için Azure rollerini kullanın. Gereksinimle eşleşen yerleşik bir rol bulun veya kullanılabilir izinleri kullanarak bir Azure özel rolü oluşturun
    • Yönetilen örnekte sunucu genelindeki görevler (yeni oturum açma bilgileri, veritabanları oluşturma) için Sunucu rolleri oluşturun.
    • Veritabanı düzeyinde görevler için Veritabanı Rolleri oluşturma.
  • Belirli hassas görevler için, görevleri kullanıcılar adına yürütmek üzere sertifika tarafından imzalanan özel saklı yordamlar oluşturmayı göz önünde bulundurun. Dijital olarak imzalanan saklı yordamların önemli avantajlarından biri, yordam değiştirilirse, yordamın önceki sürümüne verilen izinlerin hemen kaldırılmasıdır.

  • Veri sahibi ile güvenlik sahibi arasında Görev Ayrımı'nı etkinleştirmek için Azure Key Vault'ta müşteri tarafından yönetilen anahtarlarla Saydam Veri Şifrelemesi (TDE) uygulayın.

  • DBA'nın son derece hassas olarak kabul edilen ve DBA görevlerini yine de gerçekleştirebilen verileri göremesini sağlamak için Always Encrypted'ı rol ayrımı ile kullanabilirsiniz.

  • Always Encrypted kullanımının mümkün olmadığı durumlarda veya en azından sistemi kullanılamaz duruma getirebilecek büyük maliyetler ve çabalar olmadan, aşağıdaki gibi telafi denetimleri aracılığıyla riskler yapılabilir ve azaltılabilir:

En iyi uygulamalar

  • Geliştirme/Test ve Üretim ortamları için farklı hesapların kullanıldığından emin olun. Farklı hesaplar, Test ve Üretim sistemlerinin ayrılmasına uyum sağlamaya yardımcı olur.

  • Tek tek kullanıcılara izin atamaktan kaçının. Bunun yerine rolleri (veritabanı veya sunucu rolleri) tutarlı bir şekilde kullanın. Rollerin olması, raporlama ve sorun giderme izinlerine büyük ölçüde yardımcı olur.

  • İzinler tam olarak gerekli izinlerle eşleştiğinde yerleşik rolleri kullanın. Birden çok yerleşik roldeki tüm izinlerin birleşimi %100 eşleşmeye yol açıyorsa, aynı anda birden çok rol de atayabilirsiniz.

  • Yerleşik roller çok fazla izin veya yetersiz izin verdiğinde kullanıcı tanımlı roller oluşturun ve kullanın.

  • Rol atamaları, T-SQL'deki SQL Aracısı İşi adımlarında veya Azure rolleri için Azure PIM kullanılarak geçici olarak da yapılabilir.

  • DTA'ların şifreleme anahtarlarına veya anahtar depolarına erişimi olmadığından ve anahtarlara erişimi olan Güvenlik Yönetici istrator'larının veritabanına sırayla erişimi olmadığından emin olun. Genişletilebilir Anahtar Yönetimi'nin (EKM) kullanılması bu ayrımı daha kolay hale getirebilir. EkM'yi uygulamak için Azure Key Vault kullanılabilir.

  • Güvenlikle ilgili eylemler için her zaman bir Denetim izi olduğundan emin olun.

  • Kullanılan izinleri görmek için Azure yerleşik rollerinin tanımını alabilir ve PowerShell aracılığıyla bunların alıntılarını ve birikmesini temel alan özel bir rol oluşturabilirsiniz.

  • db_owner veritabanı rolünün herhangi bir üyesi Saydam Veri Şifrelemesi (TDE) gibi güvenlik ayarlarını değiştirebileceğinden veya SLO'yu değiştirebildiğinden, bu üyelik dikkatli bir şekilde verilmelidir. Ancak, db_owner ayrıcalıkları gerektiren birçok görev vardır. Veritabanı seçeneklerini değiştirme gibi herhangi bir veritabanı ayarını değiştirme gibi görevler. Denetim, herhangi bir çözümde önemli bir rol oynar.

  • Bir db_owner izinlerini kısıtlamak ve bu nedenle bir yönetici hesabının kullanıcı verilerini görüntülemesini engellemek mümkün değildir. Veritabanında son derece hassas veriler varsa Always Encrypted, db_owners veya diğer DBA'ların bunları görüntülemesini güvenli bir şekilde önlemek için kullanılabilir.

Not

Görev Ayrımı (SoD) elde etmek, güvenlikle ilgili veya sorun giderme görevleri için zordur. Geliştirme ve son kullanıcı rolleri gibi diğer alanların toplanması daha kolaydır. Uyumlulukla ilgili denetimlerin çoğu, diğer çözümler pratik olmadığında Denetim gibi alternatif denetim işlevlerinin kullanılmasına olanak sağlar.

SoD'ye daha ayrıntılı bir şekilde göz atmak isteyen okuyucular için aşağıdaki kaynakları öneririz:

Normal kod incelemeleri gerçekleştirme

Bahsedilenler: PCI: 6.3.2, SOC: SDL-3

Görev Ayrımı, veritabanındaki verilerle sınırlı değildir, uygulama kodu içerir. Kötü amaçlı kod, güvenlik denetimlerini aşabilir. Özel kodu üretime dağıtmadan önce dağıtılanları gözden geçirmek önemlidir.

Uygulama

  • Kaynak denetimini destekleyen Azure Data Studio gibi bir veritabanı aracı kullanın.

  • Ayrılmış bir kod dağıtım işlemi uygulayın.

  • Ana dala bağlanmadan önce, bir kişinin (kodun yazarının kendisi dışında) kodu potansiyel ayrıcalıkların yükseltilmesi risklerinin yanı sıra sahtekarlık ve sahte erişime karşı korumak için kötü amaçlı veri değişiklikleri açısından incelemesi gerekir. Bu, kaynak denetim mekanizmaları kullanılarak yapılabilir.

En iyi uygulamalar

  • Standartlaştırma: Kod güncelleştirmeleri için izlenecek standart bir yordamın uygulanmasına yardımcı olur.

  • Güvenlik Açığı Değerlendirmesi aşırı izinleri, eski şifreleme algoritmalarının kullanımını ve veritabanı şemasındaki diğer güvenlik sorunlarını denetleen kurallar içerir.

  • SQL eklemeye açık kodu tarar gelişmiş tehdit koruması kullanılarak bir soru-cevap veya test ortamında daha fazla denetim yapılabilir.

  • Nelere dikkat etmek istediğinize ilişkin örnekler:

    • Kullanıcı oluşturma veya otomatik SQL kodu güncelleştirme dağıtımının içinden güvenlik ayarlarını değiştirme.
    • Sağlanan parametrelere bağlı olarak hücredeki parasal değeri uyumsuz bir şekilde güncelleştiren saklı yordam.
  • Gözden geçirmeyi yöneten kişinin, kaynak kod yazarı dışında bir kişi olduğundan ve kod incelemeleri ve güvenli kodlama konusunda bilgili olduğundan emin olun.

  • Kod değişikliklerinin tüm kaynaklarını bildiğinizden emin olun. Kod, T-SQL Betikleri'nde olabilir. Yürütülecek veya Görünümler, İşlevler, Tetikleyiciler ve Saklı Yordamlar biçiminde dağıtılacak geçici komutlar olabilir. SQL Aracısı İş tanımlarının (Adımlar) bir parçası olabilir. Ayrıca SSIS paketleri, Azure Data Factory ve diğer hizmetlerin içinden de yürütülebilir.

Veri koruması

Veri koruma, önemli bilgileri şifreleme veya gizleme yoluyla tehlikeye karşı korumaya yönelik bir özellik kümesidir.

Not

Microsoft, Azure SQL Veritabanı ve SQL Yönetilen Örneği FIPS 140-2 Düzey 1 uyumlu olduğunu onaylar. Bu, gerekli anahtar uzunlukları, anahtar yönetimi, anahtar oluşturma ve anahtar depolama ile tutarlılık dahil olmak üzere bu algoritmaların FIPS 140-2 Düzey 1 kabul edilebilir algoritmalarının ve FIPS 140-2 Düzey 1 doğrulanmış örneklerinin katı kullanımı doğrulandıktan sonra yapılır. Bu kanıtlama, müşterilerimizin verilerin işlenmesinde veya sistemlerin veya uygulamaların tesliminde FIPS 140-2 Düzey 1 doğrulanmış örneklerinin kullanımına yönelik ihtiyaç veya gereksinime yanıt vermelerini sağlamak için tasarlanmıştır. Yukarıdaki bildirimde kullanılan "FIPS 140-2 Düzey 1 uyumlu" ve "FIPS 140-2 Düzey 1 uyumluluğu" terimlerini tanımlayarak ABD ve Kanada hükümeti tarafından farklı "FIPS 140-2 Düzey 1 doğrulandı" teriminin kullanılabileceğini gösteriyoruz.

Aktarımdaki verileri şifreleme

Bahsedilenler: OSA Uygulaması #6, ISO Denetim Ailesi: Şifreleme

Veriler istemciniz ve sunucunuz arasında taşınırken verilerinizi korur. Ağ Güvenliği'ne bakın.

Bekleyen verileri şifreleme

Bahsedilenler: OSA Uygulaması #6, ISO Denetim Ailesi: Şifreleme

Bekleyen şifreleme, veritabanında, günlükte ve yedekleme dosyalarında kalıcı hale geldiğinde verilerin şifreleme korumasıdır.

Uygulama

  • Hizmet tarafından yönetilen anahtarlarla saydam veri şifrelemesi (TDE), Azure SQL Veritabanı ve SQL Yönetilen Örneği'de 2017'nin ardından oluşturulan tüm veritabanları için varsayılan olarak etkinleştirilir.
  • Yönetilen örnekte, veritabanı şirket içi sunucu kullanılarak bir geri yükleme işleminden oluşturulduysa, özgün veritabanının TDE ayarı kabul edilir. Özgün veritabanında TDE etkin değilse, yönetilen örnek için TDE'nin el ile açılmasını öneririz.

En iyi uygulamalar

  • Bekleyen şifreleme gerektiren verileri veritabanında depolamayın master . Veritabanı master TDE ile şifrelenemez.

  • TDE koruması üzerinde daha fazla saydamlığa ve ayrıntılı denetime ihtiyacınız varsa Azure Key Vault'ta müşteri tarafından yönetilen anahtarları kullanın. Azure Key Vault, veritabanını erişilemez hale getirmek için izinleri istediğiniz zaman iptal etme olanağı sağlar. TDE koruyucularını diğer anahtarlarla birlikte merkezi olarak yönetebilir veya Azure Key Vault'u kullanarak TDE koruyucuyu kendi zamanlamanızda döndürebilirsiniz.

  • Azure Key Vault'ta müşteri tarafından yönetilen anahtarlar kullanıyorsanız Azure Key Vault ile TDE yapılandırma yönergeleri ve Azure Key Vault ile Geo-DR'yi yapılandırma makalelerini izleyin.

Not

Tablo adları, nesne adları ve dizin adları gibi müşteri içeriği olarak kabul edilen bazı öğeler Microsoft tarafından destek ve sorun giderme amacıyla günlük dosyalarına aktarılabilir.

Kullanımdaki hassas verileri yüksek ayrıcalıklı, yetkisiz kullanıcılardan koruma

Kullanımdaki veriler, SQL sorgularının yürütülmesi sırasında veritabanı sisteminin belleğinde depolanan verilerdir. Veritabanınız hassas verileri depolarsa, kuruluşunuzun yüksek ayrıcalıklı kullanıcıların veritabanınızdaki hassas verileri görüntülemesini engellemesi gerekebilir. Kuruluşunuzdaki Microsoft operatörleri veya DTA'lar gibi yüksek ayrıcalıklı kullanıcıların veritabanını yönetebilmesi gerekir, ancak hassas verileri SQL işleminin belleğinden veya veritabanını sorgulayarak görüntülemesi ve çıkarma olasılığı engellenmelidir.

Hangi verilerin hassas olduğunu ve hassas verilerin bellekte şifrelenip şifrelenmemesi ve yöneticiler tarafından düz metin olarak erişilmemesi gerektiğini belirleyen ilkeler, bağlı kalmanız gereken kuruluşunuza ve uyumluluk düzenlemelerine özgüdür. Lütfen ilgili gereksinime bakın: Hassas verileri tanımlama ve etiketleme.

Uygulama

En iyi uygulamalar

  • Always Encrypted, bekleyen (TDE) veya aktarımdaki (SSL/TLS) verileri şifrelemenin yerini tutmaz. Always Encrypted, performansı ve işlevsellik etkisini en aza indirmek için hassas olmayan veriler için kullanılmamalıdır. Bekleyen, aktarımdaki ve kullanımdaki verilerin kapsamlı koruması için Always Encrypted'ın TDE ve Aktarım Katmanı Güvenliği (TLS) ile birlikte kullanılması önerilir.

  • Always Encrypted'ı bir üretim veritabanına dağıtmadan önce tanımlanan hassas veri sütunlarını şifrelemenin etkisini değerlendirin. Genel olarak Always Encrypted, şifrelenmiş sütunlardaki sorguların işlevselliğini azaltır ve Always Encrypted - Özellik Ayrıntıları bölümünde listelenen diğer sınırlamalara sahiptir. Bu nedenle, işlevi yeniden başlatmak için uygulamanızı yeniden oluşturmanız gerekebilir; istemci tarafında sorgu desteklenmez veya/ve saklı yordamların, işlevlerin, görünümlerin ve tetikleyicilerin tanımları dahil olmak üzere veritabanı şemanızı yeniden düzenlemeniz gerekebilir. Always Encrypted kısıtlamalarına ve sınırlamalarına uymayan mevcut uygulamalar şifrelenmiş sütunlarla çalışmayabilir. Always Encrypted'ı destekleyen Microsoft araçlarının, ürünlerinin ve hizmetlerinin ekosistemi artmaya devam ederken, bunların bir kısmı şifrelenmiş sütunlarla çalışmaz. Bir sütunu şifrelemek, iş yükünüzün özelliklerine bağlı olarak sorgu performansını da etkileyebilir.

  • Verileri kötü amaçlı DTA'lardan korumak için Always Encrypted kullanıyorsanız Always Encrypted anahtarlarını rol ayrımı ile yönetin. Rol ayrımı ile, güvenlik yöneticisi fiziksel anahtarları oluşturur. DBA, veritabanındaki fiziksel anahtarları açıklayan sütun ana anahtarı ve sütun şifreleme anahtarı meta veri nesnelerini oluşturur. Bu işlem sırasında güvenlik yöneticisinin veritabanına erişmesi ve DBA'nın düz metin olarak fiziksel anahtarlara erişmesi gerekmez.

  • Yönetim kolaylığı için sütun ana anahtarlarınızı Azure Key Vault'ta depolayın. Anahtar yönetimini zorlaştıran Windows Sertifika Deposu(ve genel olarak dağıtılmış anahtar deposu çözümleri, merkezi anahtar yönetimi çözümleri yerine) kullanmaktan kaçının.

  • Birden çok anahtar (sütun ana anahtarı veya sütun şifreleme anahtarları) kullanmanın dezavantajlarını dikkatle düşünün. Anahtar yönetimi maliyetini azaltmak için anahtar sayısını küçük tutun. Veritabanı başına bir sütun ana anahtarı ve bir sütun şifreleme anahtarı genellikle sabit durumdaki ortamlarda (anahtar döndürmenin ortasında değil) yeterlidir. Her birinde farklı anahtarlar kullanan ve farklı verilere erişen farklı kullanıcı gruplarınız varsa ek anahtarlara ihtiyacınız olabilir.

  • Uyumluluk gereksinimlerinize göre sütun ana anahtarlarını döndürün. Sütun şifreleme anahtarlarını da döndürmeniz gerekiyorsa, uygulama kapalı kalma süresini en aza indirmek için çevrimiçi şifrelemeyi kullanmayı göz önünde bulundurun.

    • Performans ve Kullanılabilirlik Konuları makalesine bakın.
  • Verilerdeki hesaplamaların (eşitlik) desteklenmesi gerekiyorsa belirlenimci şifrelemeyi kullanın. Aksi takdirde rastgele şifreleme kullanın. Düşük entropi veri kümeleri veya genel olarak bilinen dağıtıma sahip veri kümeleri için belirlenimci şifreleme kullanmaktan kaçının.

  • Üçüncü tarafların izniniz olmadan verilerinize yasal olarak erişmesi konusunda endişeleriniz varsa, anahtarlara ve verilere düz metin olarak erişimi olan tüm uygulama ve araçların Microsoft Azure Bulut dışında çalıştığından emin olun. Anahtarlara erişim olmadan, üçüncü taraf şifrelemeyi atlamadığı sürece verilerin şifresini çözmenin hiçbir yolu olmayacaktır.

  • Always Encrypted, anahtarlara (ve korunan verilere) geçici erişim verilmesini kolayca desteklemez. Örneğin, DBA'nın hassas ve şifrelenmiş veriler üzerinde bazı temizleme işlemleri gerçekleştirmesine izin vermek için anahtarları bir DBA ile paylaşmanız gerekiyorsa. DBA'dan verilere erişimi güvenilir bir şekilde iptal etmenin tek yolu hem sütun şifreleme anahtarlarını hem de verileri koruyan sütun ana anahtarlarını döndürmektir. Bu pahalı bir işlemdir.

  • Şifrelenmiş sütunlardaki düz metin değerlerine erişmek için, kullanıcının CMK'yi tutan anahtar deposunda yapılandırılan sütunları koruyan Sütun Ana Anahtarına (CMK) erişimi olmalıdır. Kullanıcının ayrıca HERHANGİ Bİr SÜTUN ANA ANAHTAR TANIMI GÖRÜNTÜLE ve SÜTUN ŞIFRELEME ANAHTARI TANIMI VERITABANı izinlerini GÖRÜNTÜLEMEsi gerekir.

Şifreleme aracılığıyla uygulama kullanıcılarının hassas verilere erişimini denetleme

Şifreleme, yalnızca şifreleme anahtarlarına erişimi olan belirli uygulama kullanıcılarının verileri görüntüleyebilmesini veya güncelleştirebilmesini sağlamanın bir yolu olarak kullanılabilir.

Uygulama

  • Hücre düzeyinde Şifreleme (CLE) kullanın. Ayrıntılar için Veri Sütununu Şifreleme makalesine bakın.
  • Always Encrypted'ı kullanın, ancak sınırlamalarına dikkat edin. Sınırlamalar aşağıda listelenmiştir.

En iyi yöntemler:

CLE kullanırken:

  • SQL izinleri ve rolleri aracılığıyla anahtarlara erişimi denetleme.

  • Veri şifrelemesi için AES (AES 256 önerilir) kullanın. RC4, DES ve TripleDES gibi algoritmalar kullanım dışıdır ve bilinen güvenlik açıkları nedeniyle kullanılmamalıdır.

  • 3DES kullanmaktan kaçınmak için simetrik anahtarları asimetrik anahtarlarla/sertifikalarla (parolalarla değil) koruyun.

  • Dışarı/içeri aktarma (bacpac dosyaları) aracılığıyla Hücre Düzeyinde Şifreleme kullanarak veritabanını geçirirken dikkatli olun.

Always Encrypted'ın öncelikli olarak kullanımdaki hassas verileri Azure SQL Veritabanı yüksek ayrıcalıklı kullanıcılarından (bulut operatörleri, DTA'lar) korumak için tasarlandığını unutmayın. Bkz. Kullanımdaki hassas verileri yüksek ayrıcalıklı, yetkisiz kullanıcılardan koruma. Verileri uygulama kullanıcılarından korumak için Always Encrypted kullanırken aşağıdaki zorluklara dikkat edin:

  • Varsayılan olarak, Always Encrypted'ı destekleyen tüm Microsoft istemci sürücüleri sütun şifreleme anahtarlarının genel (uygulama başına bir tane) önbelleğini tutar. İstemci sürücüsü, bir sütun ana anahtarının bulunduğu bir anahtar deposuna başvurarak düz metin sütun şifreleme anahtarı aldıktan sonra düz metin sütun şifreleme anahtarı önbelleğe alınır. Bu, çok kullanıcılı bir uygulamanın kullanıcılarından veri yalıtma işlemini zorlaştırır. Uygulamanız bir anahtar deposuyla (Azure Key Vault gibi) etkileşim kurarken son kullanıcıların kimliğine büründüyse, kullanıcının sorgusu önbelleği bir sütun şifreleme anahtarıyla doldurduktan sonra, aynı anahtarı gerektiren ancak başka bir kullanıcı tarafından tetiklenen sonraki bir sorgu önbelleğe alınmış anahtarı kullanır. Sürücü anahtar depoyu çağırmaz ve ikinci kullanıcının sütun şifreleme anahtarına erişim izni olup olmadığını denetlemez. Sonuç olarak, kullanıcı anahtarlara erişimi olmasa bile şifrelenmiş verileri görebilir. Çok kullanıcılı bir uygulama içindeki kullanıcıların yalıtımını elde etmek için sütun şifreleme anahtarı önbelleğini devre dışı bırakabilirsiniz. Sürücünün her veri şifreleme veya şifre çözme işlemi için anahtar deposuna başvurması gerekeceği için önbelleğe almayı devre dışı bırakmak ek performans ek yüklerine neden olur.

Veri biçimini korurken, verileri uygulama kullanıcıları tarafından yetkisiz görüntülemeye karşı koruma

Yetkisiz kullanıcıların verileri görüntülemesini önlemeye yönelik bir diğer teknik de, kullanıcı uygulamalarının verileri işlemeye ve görüntülemeye devam etmesini sağlamak için veri türlerini ve biçimlerini korurken verileri karartmak veya maskelemektir.

Uygulama

  • Tablo sütunlarını karartmak için Dinamik Veri Maskeleme'yi kullanın.

Not

Always Encrypted, Dinamik Veri Maskeleme ile çalışmaz. Aynı sütunu şifrelemek ve maskelemek mümkün değildir; bu da kullanımdaki verilerin korunmasına ve Dinamik Veri Maskeleme yoluyla uygulama kullanıcılarınız için verilerin maskelenmesine öncelik vermeniz gerektiğini gösterir.

En iyi uygulamalar

Not

Dinamik Veri Maskeleme, verileri yüksek ayrıcalıklı kullanıcılardan korumak için kullanılamaz. Maskeleme ilkeleri, db_owner gibi yönetici erişimi olan kullanıcılar için geçerli değildir.

  • Uygulama kullanıcılarının geçici sorgular çalıştırmasına izin verme (Dinamik Veri Maskeleme'yi geçici olarak kullanabilecekleri için).

  • Maskelenmiş sütunlarda güncelleştirme yapmak için kullanıcı izinlerini sınırlamak için uygun bir erişim denetimi ilkesi (SQL izinleri, roller, RLS aracılığıyla) kullanın. Bir sütunda maske oluşturmak, bu sütunda yapılan güncelleştirmeleri engellemez. Maskelenmiş sütunu sorgularken maskelenmiş veri alan kullanıcılar, yazma izinleri varsa verileri güncelleştirebilir.

  • Dinamik Veri Maskeleme, maskelenmiş değerlerin istatistiksel özelliklerini korumaz. Bu, sorgu sonuçlarını etkileyebilir (örneğin, maskelenmiş verilerde filtreleme koşullarını veya birleştirmeleri içeren sorgular).

Ağ güvenliği

Ağ güvenliği, Azure SQL Veritabanı aktarımdaki verilerinizin güvenliğini sağlamak için erişim denetimlerini ve en iyi yöntemleri ifade eder.

İstemcimi SQL Veritabanı/SQL Yönetilen Örneği güvenli bir şekilde bağlanacak şekilde yapılandırma

İyi bilinen güvenlik açıklarına sahip istemci makinelerinin ve uygulamaların (örneğin, eski TLS protokollerini ve şifre paketlerini kullanarak) Azure SQL Veritabanı ve SQL Yönetilen Örneği bağlanmasını önlemeye yönelik en iyi yöntemler.

Uygulama

En iyi uygulamalar

  • En düşük TLS sürümü ayarını kullanarak SQL Veritabanı sunucusunda veya SQL Yönetilen Örneği düzeyinde en düşük TLS sürümünü zorunlu kılın. Uygulamalarınızın desteklediğini onaylamak için test ettikten sonra en düşük TLS sürümünü 1.2 olarak ayarlamanızı öneririz. TLS 1.2, önceki sürümlerde bulunan güvenlik açıklarına yönelik düzeltmeler içerir.

  • Şifreleme etkinken tüm uygulamalarınızı ve araçlarınızı SQL Veritabanı bağlanacak şekilde yapılandırma

    • Encrypt = On, TrustServerCertificate = Off (veya Microsoft dışı sürücülerle eşdeğer).
  • Uygulamanız TLS'yi desteklemeyen veya TLS'nin eski bir sürümünü destekleyen bir sürücü kullanıyorsa, mümkünse sürücüyü değiştirin. Mümkün değilse güvenlik risklerini dikkatle değerlendirin.

    • Aktarım Katmanı Güvenliği (TLS) kayıt defteri ayarlarına göre Azure SQL Veritabanı bağlanan istemci makinelerinde bunları devre dışı bırakarak SSL 2.0, SSL 3.0, TLS 1.0 ve TLS 1.1'deki güvenlik açıkları aracılığıyla saldırı vektörlerini azaltın.
    • İstemcide kullanılabilen şifreleme paketlerini denetleyin: TLS/SSL (Schannel SSP) içindeki Şifreleme Paketleri. Özellikle, TLS Şifreleme Paketi Sırasını Yapılandırırken 3DES'i devre dışı bırakın.

Saldırı yüzeyini en aza indirme

Kötü amaçlı bir kullanıcı tarafından saldırıya uğrayabilecek özellik sayısını en aza indirin. Azure SQL Veritabanı için ağ erişim denetimleri uygulayın.

Bahsedilenler: OSA Uygulaması #5

Uygulama

SQL Veritabanı:

  • Azure hizmetlerine erişime izin ver'i sunucu düzeyinde KAPALI olarak ayarlayın
  • Sanal Ağ Hizmeti uç noktalarını ve Sanal Ağ Güvenlik Duvarı Kurallarını kullanın.
  • Özel Bağlantı kullanın.

SQL Yönetilen Örneği:

  • Ağ gereksinimleri'ndeki yönergeleri izleyin.

En iyi uygulamalar

  • Özel bir uç noktaya bağlanarak (örneğin, özel veri yolu kullanarak) Azure SQL Veritabanı ve SQL Yönetilen Örneği erişimini kısıtlama:

    • Yönetilen örnek, dış erişimi önlemek için bir sanal ağ içinde yalıtılabilir. Aynı bölgedeki aynı veya eşlenmiş sanal ağda yer alan uygulamalar ve araçlar bu ağa doğrudan erişebilir. Farklı bölgedeki uygulamalar ve araçlar, bağlantı kurmak için sanal ağdan sanal ağa bağlantı veya ExpressRoute bağlantı hattı eşlemesini kullanabilir. Müşteri, 1433 numaralı bağlantı noktası üzerinden erişimi yalnızca yönetilen örneğe erişim gerektiren kaynaklarla kısıtlamak için Ağ Güvenlik Gruplarını (NSG) kullanmalıdır.
    • SQL Veritabanı için sanal ağınızdaki sunucu için ayrılmış özel IP sağlayan Özel Bağlantı özelliğini kullanın. Sunucularınıza erişimi kısıtlamak için sanal ağ güvenlik duvarı kurallarıyla sanal ağ hizmet uç noktalarını da kullanabilirsiniz.
    • Mobil kullanıcılar, veri yolu üzerinden bağlanmak için noktadan siteye VPN bağlantılarını kullanmalıdır.
    • Şirket içi ağlarına bağlı kullanıcılar, veri yolu üzerinden bağlanmak için siteden siteye VPN bağlantısı veya ExpressRoute kullanmalıdır.
  • Azure SQL Veritabanı ve SQL Yönetilen Örneği bir genel uç noktaya (örneğin, genel veri yolu kullanarak) bağlanarak erişebilirsiniz. Aşağıdaki en iyi yöntemler dikkate alınmalıdır:

    • SQL Veritabanı bir sunucu için, erişimi yalnızca yetkili IP adresleriyle kısıtlamak için IP güvenlik duvarı kurallarını kullanın.
    • SQL Yönetilen Örneği için ağ güvenlik gruplarını (NSG) kullanarak 3342 numaralı bağlantı noktası üzerinden erişimi yalnızca gerekli kaynaklarla kısıtlayın. Daha fazla bilgi için bkz . Yönetilen örneği genel uç noktalarla güvenli bir şekilde kullanma.

    Not

    SQL Yönetilen Örneği genel uç noktası varsayılan olarak etkin değildir ve açıkça etkinleştirilmesi gerekir. Şirket ilkesi genel uç noktaların kullanılmasına izin vermediyse, ilk etapta genel uç noktaların etkinleştirilmesini önlemek için Azure İlkesi kullanın.

  • Azure Ağ bileşenlerini ayarlama:

    • Ağ güvenliği için En iyi Azure uygulamalarını izleyin.
    • Azure Sanal Ağ sık sorulan sorular (SSS) ve planda özetlenen en iyi yöntemlere göre Sanal Ağ yapılandırmayı planlayın.
    • Bir sanal ağı birden çok alt ağa bölün ve aynı alt ağa benzer bir rol için kaynaklar atayın (örneğin, ön uç ve arka uç kaynakları).
    • Azure sanal ağ sınırı içindeki alt ağlar arasındaki trafiği denetlemek için Ağ Güvenlik Grupları'nı (NSG) kullanın.
    • Gelen ve giden ağ trafiğini izlemek için aboneliğiniz için Azure Ağ İzleyicisi'yi etkinleştirin.

SQL Veritabanı/SQL Yönetilen Örneği güvenli bağlantılar için Power BI'ı yapılandırma

En iyi uygulamalar

App Service'i SQL Veritabanı/SQL Yönetilen Örneği güvenli bağlantılar için yapılandırma

En iyi uygulamalar

  • Basit bir Web Uygulaması için genel uç nokta üzerinden bağlanmak için Azure Hizmetlerine İzin Ver ayarının ON olarak ayarlanması gerekir.

  • Yönetilen örneğe özel veri yolu bağlantısı için uygulamanızı azure Sanal Ağ ile tümleştirin. İsteğe bağlı olarak, App Service Ortamı s (ASE) ile bir Web Uygulaması da dağıtabilirsiniz.

  • SQL Veritabanı'da bir veritabanına bağlanan ASE veya sanal ağ Tümleşik Web Uygulaması ile Web Uygulaması için, belirli bir sanal ağ ve alt ağdan erişimi sınırlamak için sanal ağ hizmet uç noktalarını ve sanal ağ güvenlik duvarı kurallarını kullanabilirsiniz. Ardından Azure Hizmetlerine İzin Ver'i KAPALI olarak ayarlayın. AsE'yi özel veri yolu üzerinden SQL Yönetilen Örneği yönetilen örneğe de bağlayabilirsiniz.

  • Web Uygulamanızın hizmet olarak platform (PaaS) web ve mobil uygulamalarını Azure Uygulaması Hizmeti kullanarak güvenli hale getirmek için en iyi yöntemler başlıklı makaleye göre yapılandırıldığından emin olun.

  • Web uygulamanızı yaygın açıklardan ve güvenlik açıklarından korumak için Web Uygulaması Güvenlik Duvarı (WAF) yükleyin.

SQL Veritabanı/SQL Yönetilen Örneği güvenli bağlantılar için Azure Sanal Makine barındırmayı yapılandırma

En iyi uygulamalar

  • Vm'den hangi bölgelere erişilebileceğini denetlemek için Azure sanal makinelerinin NSG'lerinde İzin Ver ve Reddet kurallarının bir bileşimini kullanın.

  • Vm'nizin Azure'daki IaaS iş yükleri için en iyi güvenlik yöntemleri makalesine göre yapılandırıldığından emin olun.

  • Tüm VM'lerin belirli bir sanal ağ ve alt ağ ile ilişkilendirildiğinden emin olun.

  • Zorlamalı tünel hakkındaki yönergelere göre varsayılan 0.0.0.0/internet yoluna ihtiyacınız olup olmadığını değerlendirin.

    • Evet ise (örneğin, ön uç alt ağı) varsayılan yolu koruyun.
    • Yok ise (örneğin, orta katman veya arka uç alt ağı), İnternet üzerinden giden trafiğin şirket içi (şirket içi ağ) üzerinden ulaşmaması için zorlamalı tünel oluşturmayı etkinleştirin.
  • Eşleme kullanıyorsanız veya şirket içine bağlanıyorsanız isteğe bağlı varsayılan yolları uygulayın.

  • Sanal ağdaki tüm trafiği paket incelemesi için bir Ağ Sanal Gereci'ne göndermeniz gerekiyorsa Kullanıcı Tanımlı Yolları uygulayın.

  • Azure omurga ağı üzerinden Azure Depolama gibi PaaS hizmetlerine güvenli erişim için sanal ağ hizmet uç noktalarını kullanın.

Dağıtılmış Hizmet Reddi (DDoS) saldırılarına karşı koruma

Dağıtılmış Hizmet Reddi (DDoS) saldırıları, kötü amaçlı bir kullanıcının Azure altyapısını bunaltmak ve geçerli oturum açma bilgilerini ve iş yükünü reddetmesini sağlamak amacıyla Azure SQL Veritabanı ağ trafiği akışı gönderme girişimidir.

Bahsedilenler: OSA Uygulaması #9

Uygulama

DDoS koruması, Azure Platformu'nun bir parçası olarak otomatik olarak etkinleştirilir. Her zaman açık trafik izleme ve genel uç noktalara yönelik ağ düzeyinde saldırıların gerçek zamanlı olarak azaltılmasını içerir.

En iyi uygulamalar

  • Saldırıyı En Aza İndir Surface, DDoS saldırı tehditlerini en aza indirmeye yardımcı olur başlığı altında açıklanan uygulamaları izleyin.

  • Gelişmiş Tehdit Koruması Deneme yanılma SQL kimlik bilgileri uyarısı deneme yanılma saldırılarını algılamaya yardımcı olur. Bazı durumlarda, uyarı sızma testi iş yüklerini ayırt edebilir.

  • SQL Veritabanı bağlanan Azure VM barındırma uygulamaları için:

    • Bulut için Microsoft Defender'da İnternet'e yönelik uç noktalar üzerinden erişimi kısıtlama önerisini izleyin.
    • Azure VM'lerinde uygulamanızın birden çok örneğini çalıştırmak için sanal makine ölçek kümelerini kullanın.
    • Deneme yanılma saldırılarını önlemek için İnternet'ten RDP ve SSH'yi devre dışı bırakın.

İzleme, günlük kaydı ve denetim

Bu bölüm, veritabanlarına erişmeye veya veritabanlarına erişmeye veya bunlardan yararlanmaya yönelik olağan dışı ve zararlı olabilecek girişimleri gösteren anormal etkinlikleri algılamanıza yardımcı olan özellikleri ifade eder. Ayrıca veritabanı olaylarını izlemek ve yakalamak için veritabanı denetimini yapılandırmak için en iyi yöntemleri açıklar.

Veritabanlarını saldırılara karşı koruma

Gelişmiş tehdit koruması, anormal etkinliklerle ilgili güvenlik uyarıları sağlayarak olası tehditleri algılayıp bunlara yanıt vermenizi sağlar.

Uygulama

  • Aşağıdakiler dahil olmak üzere veritabanlarına erişmeye veya veritabanlarını kötüye kullanmaya yönelik olağan dışı ve zararlı olabilecek girişimleri algılamak için SQL için Gelişmiş Tehdit Koruması'ni kullanın:
    • SQL ekleme saldırısı.
    • Kimlik bilgileri hırsızlığı/sızıntısı.
    • Ayrıcalık kötüye kullanımı.
    • Veri sızdırma.

En iyi uygulamalar

  • Sql için Microsoft Defender'ı belirli bir sunucu veya yönetilen örnek için yapılandırın. Ayrıca, Bulut için Microsoft Defender etkinleştirerek abonelikteki tüm sunucular ve yönetilen örnekler için SQL için Microsoft Defender'ı yapılandırabilirsiniz.

  • Tam kapsamlı bir araştırma deneyimi için SQL Veritabanı Denetimi'nin etkinleştirilmesi önerilir. Denetimle, veritabanı olaylarını izleyebilir ve bir Azure Depolama hesabında veya Azure Log Analytics çalışma alanında bir denetim günlüğüne yazabilirsiniz.

Kritik güvenlik olaylarını denetleme

Veritabanı olaylarının izlenmesi, veritabanı etkinliğini anlamanıza yardımcı olur. İşle ilgili endişeleri veya şüpheli güvenlik ihlallerini gösterebilecek tutarsızlıklar ve anomaliler hakkında içgörü elde edebilirsiniz. Ayrıca uyumluluk standartlarına bağlı kalmayı sağlar ve kolaylaştırır.

Uygulama

En iyi uygulamalar

  • Olayları denetlemek için sunucunuzda veya Yönetilen Örnek Denetiminde SQL Veritabanı Denetimi yapılandırıldığında, bu sunucuda var olan ve yeni oluşturulan tüm veritabanları denetlenecektir.
  • Varsayılan olarak denetim ilkesi veritabanlarına yönelik tüm eylemleri (sorgular, saklı yordamlar ve başarılı ve başarısız oturum açma işlemleri) içerir ve bu da yüksek hacimli denetim günlüklerine neden olabilir. Müşterilerin PowerShell kullanarak farklı eylem ve eylem grupları için denetimi yapılandırması önerilir. Bunu yapılandırmak, denetlenen eylemlerin sayısını denetlemeye ve olay kaybı riskini en aza indirmeye yardımcı olur. Özel denetim yapılandırmaları müşterilerin yalnızca gerekli denetim verilerini yakalamasına olanak tanır.
  • Denetim günlükleri doğrudan Azure portalında veya yapılandırılan depolama konumundan kullanılabilir.

Not

Log Analytics'te denetimin etkinleştirilmesi, alım oranlarına göre maliyet doğuracaktır. Lütfen bu seçeneğin kullanılmasıyla ilişkili maliyetin farkında olun veya denetim günlüklerini bir Azure depolama hesabında depolamayı göz önünde bulundurun.

Diğer kaynaklar

Denetim günlüklerinin güvenliğini sağlama

Görev Ayrımını desteklemek ve DBA'yı Denetçilerden ayırmak için depolama hesabına erişimi kısıtlayın.

Uygulama

  • Denetim günlüklerini Azure Depolama kaydederken, Depolama Hesabına erişimin en düşük güvenlik ilkeleriyle sınırlı olduğundan emin olun. Depolama hesabına erişimi olan kişileri denetleme.
  • Daha fazla bilgi için bkz. Azure Depolama erişimi yetkilendirme.

En iyi uygulamalar

  • Denetim Hedefine Erişimi Denetleme, DBA'nın Denetçilerden ayrılmasında önemli bir kavramdır.

  • Hassas verilere erişimi denetlerken, Denetçiye bilgi sızıntısını önlemek için verilerin güvenliğini veri şifrelemesi ile sağlamayı göz önünde bulundurun. Daha fazla bilgi için, Yüksek ayrıcalıklı, yetkisiz kullanıcılardan kullanılmakta olan hassas verileri koruma bölümüne bakın.

Güvenlik Yönetimi

Bu bölümde veritabanlarınızın güvenlik duruşunu yönetmek için farklı yönleri ve en iyi yöntemler açıklanmaktadır. Veritabanlarınızın güvenlik standartlarını karşılayacak şekilde yapılandırıldığından emin olmak, veritabanlarınızdaki hassas olabilecek verileri bulmak ve sınıflandırmak ve bunlara erişimi izlemek için en iyi yöntemleri içerir.

Veritabanlarının en iyi güvenlik yöntemlerini karşılayacak şekilde yapılandırıldığından emin olun

Olası veritabanı güvenlik açıklarını keşfederek ve düzelterek veritabanı güvenliğinizi proaktif olarak geliştirin.

Uygulama

En iyi uygulamalar

  • Başlangıçta veritabanlarınızda VA'yı çalıştırın ve en iyi güvenlik yöntemlerine karşı olan başarısız denetimleri düzelterek yineleyin. Tarama temiz çıkana veya tüm denetimler geçene kadar kabul edilebilir yapılandırmalar için temelleri ayarlayın.

  • Düzenli yinelenen taramaları haftada bir çalışacak şekilde yapılandırın ve ilgili kişiyi özet e-posta alacak şekilde yapılandırın.

  • Her haftalık taramadan sonra VA özetini gözden geçirin. Bulunan tüm güvenlik açıkları için, önceki tarama sonucundaki kaymayı değerlendirin ve denetimin çözümlenip çözümlenmediğini belirleyin. Yapılandırmadaki değişikliğin geçerli bir nedeni olup olmadığını gözden geçirin.

  • İlgili olduğunda denetimleri çözün ve temelleri güncelleştirin. Eylemleri çözümlemek için bilet öğeleri oluşturun ve çözümlenene kadar bunları izleyin.

Diğer kaynaklar

Hassas verileri tanımlama ve etiketleme

Hassas veriler içerebilecek sütunları keşfedin. Hassas veriler olarak kabul edilenler büyük ölçüde müşteriye, uyumluluk düzenlemesine vb. bağlıdır ve söz konusu verilerden sorumlu kullanıcılar tarafından değerlendirilmesi gerekir. Gelişmiş duyarlılık tabanlı denetim ve koruma senaryolarını kullanmak için sütunları sınıflandırın.

Uygulama

  • Veritabanlarınızdaki hassas verileri bulmak, sınıflandırmak, etiketlemek ve korumak için SQL Veri Bulma ve Sınıflandırma'yı kullanın.
    • SQL Veri Bulma ve Sınıflandırma panosunda otomatik bulma tarafından oluşturulan sınıflandırma önerilerini görüntüleyin. Hassas verilerinizin sürekli olarak sınıflandırma etiketleriyle etiketlenmiş olması için ilgili sınıflandırmaları kabul edin.
    • Otomatik mekanizma tarafından keşfedilmemiş ek hassas veri alanları için sınıflandırmaları el ile ekleyin.
  • Daha fazla bilgi için bkz . SQL Veri Bulma ve Sınıflandırma.

En iyi uygulamalar

  • Veritabanının sınıflandırma durumunun doğru bir değerlendirmesi için sınıflandırma panosunu düzenli olarak izleyin. Veritabanı sınıflandırma durumuyla ilgili bir rapor, uyumluluk ve denetim amacıyla paylaşmak üzere dışarı aktarılabilir veya yazdırılabilir.

  • SQL Güvenlik Açığı Değerlendirmesi'nde önerilen hassas verilerin durumunu sürekli izleyin. Hassas veri bulma kuralını izleyin ve sınıflandırma için önerilen sütunlarda herhangi bir kayması belirleyin.

  • Sınıflandırmayı kuruluşunuzun belirli ihtiyaçlarına göre uyarlanmış bir şekilde kullanın. Bulut için Microsoft Defender'daki SQL Information Protection ilkesinde Information Protection ilkenizi (duyarlılık etiketleri, bilgi türleri, bulma mantığı) özelleştirin.

Hassas verilere erişimi izleme

Hassas verilere kimlerin eriştiğine bakın ve denetim günlüklerindeki hassas veriler üzerinde sorgular yakalayın.

Uygulama

  • SQL Denetimi ile Veri Sınırlandırması'nı birlikte kullanın.

En iyi uygulamalar

Güvenlik ve uyumluluk durumunu görselleştirme

Veri merkezlerinizin (SQL Veritabanı veritabanları dahil) güvenlik duruşunu güçlendiren birleşik bir altyapı güvenlik yönetim sistemi kullanın. Veritabanlarınızın güvenliği ve uyumluluk durumuyla ilgili önerilerin listesini görüntüleyin.

Uygulama

Yaygın güvenlik tehditleri ve olası risk azaltmaları

Bu bölüm, belirli saldırı vektörlerine karşı korumaya yönelik güvenlik önlemleri bulmanıza yardımcı olur. Yukarıdaki güvenlik yönergelerinden biri veya daha fazlası izlenerek çoğu risk azaltma işleminin gerçekleştirilebileceği beklenmektedir.

Güvenlik tehdidi: Veri sızdırma

Veri sızdırma, bir bilgisayardan veya sunucudan yetkisiz veri kopyalama, aktarma veya alma işlemidir. Wikipedia'da veri sızdırma tanımına bakın.

Genel uç nokta üzerinden sunucuya Bağlan, müşterilerin güvenlik duvarlarını genel IP'lere açmasını gerektirdiği için veri sızdırma riski sunar.

Senaryo 1: Azure VM'deki bir uygulama Azure SQL Veritabanı'daki bir veritabanına bağlanır. Düzenbaz bir aktör VM'ye erişim elde eder ve vm'nin güvenliğini ihlal eder. Bu senaryoda, veri sızdırma, hatalı VM kullanan bir dış varlığın veritabanına bağlanıp kişisel verileri kopyalayıp blob depolama alanında veya farklı bir abonelikte farklı bir SQL Veritabanı depolaması anlamına gelir.

Senaryo 2: Sahte bir DBA. Bu senaryo genellikle denetime tabi sektörlerden gelen güvenlik duyarlı müşteriler tarafından oluşturulur. Bu senaryoda, yüksek ayrıcalıklı bir kullanıcı verileri Azure SQL Veritabanı veri sahibi tarafından denetlenmeyen başka bir aboneliğe kopyalayabilir.

Olası risk azaltmaları

Bugün Azure SQL Veritabanı ve SQL Yönetilen Örneği, veri sızdırma tehditlerini azaltmak için aşağıdaki teknikleri sunar:

  • VM'den hangi bölgelere erişilebileceğini denetlemek için Azure VM'lerinin NSG'lerinde İzin Ver ve Reddet kurallarının bir bileşimini kullanın.
  • SQL Veritabanı bir sunucu kullanıyorsanız aşağıdaki seçenekleri ayarlayın:
    • Azure Hizmetleri'nin KAPALI olarak çalıştırılmasına izin verin.
    • Yalnızca bir Sanal Ağ Güvenlik Duvarı kuralı ayarlayarak Azure VM'nizi içeren alt ağdan gelen trafiğe izin verin.
    • Özel Bağlantı kullanma
  • SQL Yönetilen Örneği için, özel IP erişiminin varsayılan olarak kullanılması, sahte bir VM'nin ilk veri sızdırma endişesini giderir. SQL Yönetilen Örneği bir alt ağda en kısıtlayıcı ilkeyi otomatik olarak ayarlamak için bir alt ağda alt ağ temsilcisi özelliğini açın.
  • Rogue DBA endişesi, daha büyük bir yüzey alanına sahip olduğundan ve ağ gereksinimleri müşteriler tarafından görülediğinden SQL Yönetilen Örneği ile daha fazla açığa çıkar. Bunun için en iyi azaltma, rogue DBA senaryolarını ilk etapta (yalnızca veri sızdırma için değil) önlemek için bu güvenlik kılavuzundaki tüm uygulamaları uygulamaktır. Always Encrypted, hassas verileri şifreleyerek ve anahtarı DBA için erişilemez durumda tutarak korumak için bir yöntemdir.

İş sürekliliği ve kullanılabilirliğinin güvenlik yönleri

Çoğu güvenlik standardı, tek hata noktalarını önlemek için yedeklilik ve yük devretme özellikleri uygulanarak elde edilen işletimsel süreklilik açısından veri kullanılabilirliğini ele alır. Olağanüstü durum senaryolarında, Veri ve Günlük dosyalarının yedeklerini tutmak yaygın bir uygulamadır. Aşağıdaki bölümde, Azure'da yerleşik olarak bulunan özelliklere yönelik üst düzey bir genel bakış sağlanmaktadır. Ayrıca belirli gereksinimleri karşılayacak şekilde yapılandırılabilir ek seçenekler de sağlar:

Sonraki adımlar