Azure SQL Veritabanı ve Azure Synapse Analytics için denetim

Uygulama hedefi: Azure SQL Veritabanı Azure SYNAPSE Analizi

Azure SQL Veritabanı ve azure Synapse Analytics için denetim, veritabanı olaylarını izler ve bunları Azure depolama hesabınızdaki bir denetim günlüğüne, Log Analytics çalışma alanına veya Event Hubs yazar.

Denetim şunları da sağlar:

  • Mevzuatla uyumluluk, veritabanı etkinliğini anlama ve işletme sorunlarını veya şüpheli güvenlik ihlallerini işaret edebilecek farklılıklar ve anormal durumlar hakkında içgörü sahip olmanıza yardımcı olur.

  • Uyumluluğu garanti etmese bile uyumluluk standartlarına uymayı sağlar ve kolaylaştırır. Standartlarla uyumluluğu destekleyen Azure programları hakkında daha fazla bilgi edinmek için, en güncel Azure SQL uyumluluk sertifikalarının listesini de bulabileceğiniz Azure Güven Merkezi'ne bakın.

Not

Azure SQL yönetilen örnek denetimi hakkında bilgi için, aşağıdaki makaleye bakın, SQL yönetilen örnek denetimi ile çalışmaya başlayın.

Genel Bakış

SQL Veritabanı denetimini kullanarak şunları yapabilirsiniz:

  • Seçili olayların denetim izlerini koruyun . Denetlenecek veritabanı eylemi kategorilerini tanımlayabilirsiniz.
  • Veritabanı etkinliğini raporla . Etkinlik ve olay raporlamaya hızlı bir başlangıç yapmak için önceden yapılandırılmış raporları ve bir panoyu kullanabilirsiniz.
  • Raporları analiz edin . Şüpheli olayları, alışılmışın dışındaki etkinlikleri ve eğilimleri bulabilirsiniz.

Önemli

Azure SQL Veritabanı, azure Synapse ve azure SQL yönetilen örneği için denetim, kullanılabilirlik ve performans için iyileştirilmiştir. çok yüksek etkinlik veya yüksek ağ yükü, Azure SQL Veritabanı, azure Synapse ve azure SQL yönetilen örnek sırasında işlemlerin devam etmesini sağlar ve bazı denetlenen olayları kaydedemeyebilir.

Denetim sınırlamaları

  • Premium depolama şu anda desteklenmiyor.
  • Azure Data Lake Storage 2. depolama hesabı için hiyerarşik ad alanı şu anda desteklenmiyor.
  • Duraklatılmış bir Azure SYNAPSE üzerinde denetim etkinleştirilmesi desteklenmez. Denetimi etkinleştirmek için Azure Synapse'i sürdürün.
  • Azure Synapse SQL havuzları için denetim yalnızca varsayılan denetim eylemi gruplarını destekler.

Sunucu düzeyinde ve veritabanı düzeyinde denetim ilkesini tanımlayın

bir denetim ilkesi, belirli bir veritabanı için veya azure 'da varsayılan sunucu ilkesi olarak tanımlanabilir (SQL Veritabanı veya azure Synapse ' i barındırır):

  • Sunucu ilkesi, sunucuda var olan ve yeni oluşturulan tüm veritabanları için geçerlidir.

  • Sunucu denetimi etkinse, her zaman veritabanına uygulanır. Veritabanı denetim ayarlarından bağımsız olarak veritabanını denetlenecektir.

  • Denetim ilkesi veritabanı düzeyinde bir Log Analytics çalışma alanına veya bir olay hub hedefine tanımlandığında, aşağıdaki işlemler kaynak veritabanı düzeyinde denetim ilkesini tutamaz:

  • Veritabanında etkinleştirmenin yanı sıra sunucu üzerinde denetimi etkinleştirmek, sunucu denetiminin ayarlarından hiçbirini geçersiz kılmaz veya değiştirmez. Her iki denetim de yan yana bulunur. Diğer bir deyişle, veritabanı paralel olarak iki kez denetlenir; sunucu ilkesi tarafından bir kez ve veritabanı ilkesi tarafından bir kez.

    Not

    Her iki sunucu denetimi ve veritabanı blobu denetimini birlikte etkinleştirmemeye özen gösterin:

    • Belirli bir veritabanı için farklı bir depolama hesabı, bekletme dönemi veya Log Analytics çalışma alanı kullanmak istiyorsunuz.
    • Sunucu üzerindeki veritabanlarının geri kalanından farklı olan belirli bir veritabanı için olay türlerini veya kategorilerini denetlemek istiyorsunuz. Örneğin, yalnızca belirli bir veritabanı için denetlenmesi gereken tablo eklemeleri olabilir.

    Aksi takdirde, yalnızca sunucu düzeyinde denetlemeyi etkinleştirmenizi ve veritabanı düzeyinde denetimi tüm veritabanları için devre dışı bırakmayı öneririz.

Açıklamalar

  • Azure aboneliğinizdeki bir Azure Blob depolama alanındaki BLOB 'Ları eklemek için denetim günlükleri yazılır
  • denetim günlükleri. xel biçimindedir ve SQL Server Management Studio (ssms)kullanılarak açılabilir.
  • sunucu veya veritabanı düzeyinde denetim olayları için bir sabit günlük deposu yapılandırmak üzere Azure Depolama tarafından sunulan yönergeleriizleyin. Sabit blob depolamayı yapılandırırken ek ekler 'e Izin ver ' i seçtiğinizden emin olun.
  • denetim günlüklerini, VNet veya güvenlik duvarının arkasındaki bir Azure Depolama hesabına yazabilirsiniz. Belirli yönergeler için bkz. VNET ve güvenlik duvarının arkasındaki depolama hesabına yönelik denetim yazma.
  • Günlük biçimi, depolama klasörü ve adlandırma kurallarının hiyerarşisi hakkında daha fazla bilgi için bkz. BLOB denetim günlüğü biçim başvurusu.
  • Salt Okuma Çoğaltmalarında denetim otomatik olarak etkinleştirilir. depolama klasörlerinin, adlandırma kurallarının ve günlük biçiminin hiyerarşisi hakkında daha fazla ayrıntı için SQL Veritabanı denetim günlüğü biçiminebakın.
  • Azure AD kimlik doğrulaması kullanılırken, başarısız oturum açma kayıtları SQL denetim günlüğünde görünmez. başarısız oturum açma denetim kayıtlarını görüntülemek için, bu olayların ayrıntılarını günlüğe kaydeden Azure Active Directory portalınıziyaret etmeniz gerekir.
  • Oturum açma işlemleri ağ geçidi tarafından veritabanının bulunduğu belirli örneğe yönlendirilir. AAD oturum açma işlemleri söz konusu olduğunda, bu kullanıcıyla istenen veritabanında oturum açmayı denemeden önce kimlik bilgileri doğrulanır. Başarısız olması durumunda istenen veritabanına hiçbir şekilde erişilemez ve dolayısıyla hiçbir denetim gerçekleştirilmez. SQL oturum açma durumunda, kimlik bilgileri istenen verilerde doğrulanır, bu nedenle bu durumda denetlenebilir. Her iki durumda da, veritabanına ulaştığı açıkça görülen başarılı oturum açma işlemleri denetlenir.
  • Denetim ayarlarınızı yapılandırdıktan sonra, yeni tehdit algılama özelliğini açıp e-postaları güvenlik uyarılarını alacak şekilde yapılandırabilirsiniz. Tehdit algılama 'yı kullandığınızda, olası güvenlik tehditlerini gösterebilen anormal veritabanı etkinliklerinde proaktif uyarılar alırsınız. Daha fazla bilgi için bkz. tehdit algılamayı kullanmaya başlama.
  • denetim etkin olan bir veritabanı başka bir Azure SQL mantıksal sunucusuna kopyalandıktan sonra, denetim başarısız olduğunu bildiren bir e-posta alabilirsiniz. Bu bilinen bir sorundur ve denetim, yeni kopyalanmış veritabanında beklendiği gibi çalışmalıdır.

Sunucunuz için denetim ayarlama

Varsayılan denetim ilkesi, tüm eylemleri ve aşağıdaki eylem grubu kümesini içerir. Bu, veritabanına göre yürütülen tüm sorguları ve saklı yordamları ve başarılı ve başarısız oturum açma işlemlerini denetler:

  • BATCH_COMPLETED_GROUP
  • SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP
  • FAILED_DATABASE_AUTHENTICATION_GROUP

PowerShell kullanarak farklı türlerde eylemler ve eylem grupları için denetim, Azure PowerShell kullanarak SQL Veritabanı denetimi yönetme bölümünde açıklandığı gibi yapılandırabilirsiniz.

Azure SQL Veritabanı ve Azure Synapse audit, bir denetim kaydındaki karakter alanları için 4000 karakter veri depolar. Denetlenebilir bir eylemden döndürülen ifade veya data_sensitivity_information değerleri 4000 'den fazla karakter içeriyorsa, ilk 4000 karakterden sonraki tüm veriler kesilir ve denetlenmeyecektir. Aşağıdaki bölümde Azure portal kullanılarak denetim yapılandırması açıklanmaktadır.

Not

  • duraklatılmış bir adanmış SQL havuzunda denetimin etkinleştirilmesi mümkün değildir. denetimi etkinleştirmek için adanmış SQL havuzunun duraklamasını kaldırın. adanmış SQL havuzuhakkında daha fazla bilgi edinin.
  • Denetim, Azure portal veya PowerShell cmdlet 'i aracılığıyla bir Log Analytics çalışma alanına ya da bir olay hub hedefine yapılandırıldığında, "SQLSecurityAuditEvents" kategorisi etkin bir Tanılama ayarı oluşturulur.
  1. Azure Portal gidin.

  2. SQL veritabanınız veya SQL sunucusu bölmesindeki güvenlik başlığı altında bulunan denetim ' e gidin.

  3. Sunucu denetim ilkesi ayarlamayı tercih ediyorsanız, veritabanı denetimi sayfasında sunucu ayarlarını görüntüle bağlantısını seçebilirsiniz. Daha sonra sunucu denetimi ayarlarını görüntüleyebilir veya değiştirebilirsiniz. Sunucu denetim ilkeleri, bu sunucudaki tüm mevcut ve yeni oluşturulan veritabanları için geçerlidir.

    Veritabanı denetimi sayfasında vurgulanan sunucu ayarlarını görüntüle bağlantısını gösteren ekran görüntüsü.

  4. Veritabanı düzeyinde denetlemeyi etkinleştirmeyi tercih ediyorsanız, denetimi Açık olarak değiştirin. Sunucu denetimi etkinse, veritabanı yapılandırılmış denetim sunucu denetimi ile yan yana bulunur.

  5. Denetim günlüklerinin nerede yazıldığını yapılandırmak için birden çok seçeneğiniz vardır. Günlükleri bir Azure depolama hesabına, Azure Izleyici günlüklerine göre tüketim için bir Log Analytics çalışma alanına veya Olay Hub 'ı kullanarak tüketim için Olay Hub 'ına yazabilirsiniz. Bu seçeneklerin herhangi bir birleşimini yapılandırabilirsiniz ve denetim günlükleri her birine yazılır.

    depolama seçenekleri

Microsoft Desteği işlemlerinin denetlenmesi

Azure SQL Server Microsoft Desteği işlemlerinin denetlenmesi, destek isteği sırasında sunucunuza erişmesi gerektiğinde Microsoft destek mühendislerinin işlemlerini denetlemenize olanak tanır. Bu özelliğin kullanımı, denetim ile birlikte, iş gücünüze daha fazla saydamlık sağlar ve anomali algılama, eğilim görselleştirme ve veri kaybı önleme için izin verir.

Microsoft Desteği işlemlerinde denetim sağlamak için, Azure SQL sunucusu bölmeniz içindeki güvenlik başlığı altında bulunan denetim ' e gidin ve Microsoft destek işlemlerinin açık olarak denetlenmesine izin geçirin .

Microsoft Desteği Işlemlerinin ekran görüntüsü

Log Analytics çalışma alanınızdaki Microsoft Desteği işlemlerin denetim günlüklerini gözden geçirmek için aşağıdaki sorguyu kullanın:

AzureDiagnostics
| where Category == "DevOpsOperationsAudit"

Bu denetim günlüğü için farklı bir depolama hedefi seçme veya sunucunuz için aynı denetim yapılandırmasını kullanma seçeneğiniz vardır.

Denetim desteği işlemleri için denetim yapılandırması ekran görüntüsü

Depolama hedefine yönelik denetim

denetim günlüklerini bir depolama hesabına yazmayı yapılandırmak için, denetim bölümüne geldiğinizde Depolama ' yi seçin. Günlüklerin kaydedileceği Azure Depolama hesabını seçin ve ardından Gelişmiş Özellikler' i açarak bekletme dönemini seçin. Daha sonra Kaydet'e tıklayın. Saklama süresinden daha eski günlükler silinir.

  • Saklama süresi için varsayılan değer 0'dır (sınırsız saklama). Depolama hesabını denetim için yapılandırarak Gelişmiş özellikler'de Bekletme (Gün) kaydırıcısını hareket ettirerek bu değeri değiştirebilirsiniz.

    • Saklama süresi değerini 0 (sınırsız saklama) yerine başka bir değerle değiştirirsanız saklamanın yalnızca saklama değeri değiştirildikten sonra yazılan günlükler için geçerli olduğunu unutmayın (bekletme etkinleştirildikten sonra bile saklamanın sınırsız olarak ayarıldığı dönemde yazılan günlükler korunur).

    depolama hesabı

Log Analytics hedefine denetle

Denetim günlüklerini Log Analytics çalışma alanına yazmayı yapılandırmak için Log Analytics'i seçin ve Log Analytics ayrıntılarını açın. Günlüklerin yazıldığı Log Analytics çalışma alanını seçin ve ardından Tamam'a tıklayın. Bir Log Analytics çalışma alanı oluşturmadısanız, bkz.Azure portal .

LogAnalyticsworkspace

Log Analytics çalışma alanı Azure İzleyici daha fazla ayrıntı için bkz. Azure İzleyici Günlük dağıtımınızı tasarlama

Olay Hub'ı hedefine denetle

Denetim günlüklerinin bir olay hub'a yazarak yapılandırılması için Olay Hub'ı 'ı seçin. Günlüklerin yazıldığı olay hub'larını seçin ve kaydet'e tıklayın. Olay hub'ını veritabanınız ve sunucunuzla aynı bölgede olduğundan emin olun.

Eventhub

Denetim günlüklerini ve raporlarını analiz etme

Denetim günlüklerini Log Analytics'e yazmayı seçtiyebilirsiniz:

  • Azure portalını kullanın. İlgili veritabanını açın. Veritabanının Denetim sayfasının üst kısmında Denetim günlüklerini görüntüle'yi seçin.

    denetim günlüklerini görüntüleme

  • Ardından, günlükleri görüntülemek için iki yol vardır:

    Denetim kayıtları sayfasının üst kısmında Log Analytics'e tıklarsanız Log Analytics çalışma alanında Günlükler görünümü açılır. Burada zaman aralığını ve arama sorgusunu özelleştirebilirsiniz.

    Log Analytics çalışma alanında açma

    Denetim kayıtları sayfasının üst kısmında Panoyu görüntüle'ye tıklar ve denetim günlükleri bilgilerini görüntüleyen bir pano açılır. Burada Güvenlik Günlükleri, Hassas Verilere Analizler ve daha fazlasını inceleyebilirsiniz. Bu pano, verileriniz için güvenlik içgörüleri elde etmeye yardımcı olmak üzere tasarlanmıştır. Zaman aralığını ve arama sorgusunu da özelleştirebilirsiniz. Log Analytics Panosu'

    Log Analytics Panosu

    Log Analytics Güvenlik Analizler

  • Alternatif olarak, Denetim günlüklerine Log Analytics dikey penceresinden de erişebilirsiniz. Log Analytics çalışma alanınızı açın ve Genel bölümünde Günlükler'e tıklayın. Denetim günlüklerini görüntülemek için "SQLSecurityAuditEvents" araması yapmak gibi basit bir sorguyla başlayabilirsiniz. Buradan denetim günlüğü verilerinizde gelişmiş Azure İzleyici çalıştırmak için günlük günlüklerini de kullanabilirsiniz. Azure İzleyici günlükleri, tüm iş yükleriniz ve sunucularınız genelinde milyonlarca kaydı kolayca analiz etmek için tümleşik arama ve özel panolar kullanarak gerçek zamanlı operasyonel içgörüler sağlar. Günlük arama dili ve komutları hakkında Azure İzleyici yararlı bilgiler için bkz. Azure İzleyici günlükler arama başvurusu.

Denetim günlüklerini Event Hub'a yazmayı seçtiyebilirsiniz:

  • Event Hub'daki denetim günlükleri verilerini tüketmek için olayları tüketecek ve bunları bir hedefe yazacak bir akış ayarlayacaksınız. Daha fazla bilgi için bkz. Azure Event Hubs.
  • Event Hub'daki denetim günlükleri Apache Avro olaylarının gövdesinde yakalanır ve UTF-8 kodlaması ile JSON biçimlendirmesi kullanılarak depolanır. Denetim günlüklerini okumak için Avro Araçları'nı veya bu biçimi işleyebilen benzer araçları kullanabilirsiniz.

Denetim günlüklerini bir Azure depolama hesabına yazmayı seçtiysanız, günlükleri görüntülemek için kullanabileceğiniz çeşitli yöntemler vardır:

  • Denetim günlükleri, kurulum sırasında seçtiğiniz hesapta toplanır. denetim günlüklerini keşfetmek için gibi bir araç Azure Depolama Gezgini. Azure depolamada denetim günlükleri sqldbauditlogs adlı kapsayıcıda blob dosyaları koleksiyonu olarak kaydedilir. Depolama klasörlerinin hiyerarşisi, adlandırma kuralları ve günlük biçimi hakkında daha fazla bilgi için bkz. SQL Veritabanı Denetim Günlüğü Biçimi.

  • Azure portalını kullanın. İlgili veritabanını açın. Veritabanının Denetim sayfasının üst kısmında Denetim günlüklerini görüntüle'ye tıklayın.

    denetim günlüklerini görüntüleme

    Denetim kayıtları açılır ve buradan günlükleri görüntüleyebilirsiniz.

    • Denetim kayıtları sayfasının üst kısmında Filtre'ye tıklayarak belirli tarihleri görüntüleyebilirsiniz.

    • Denetim Kaynağı'nın geçişlerini kullanarak sunucu denetim ilkesi tarafından oluşturulan denetim kayıtları ile veritabanı denetim ilkesi arasında geçişebilirsiniz.

      Denetim kayıtlarını görüntüleme seçeneklerini gösteren ekran görüntüsü.

  • Denetim günlüğü verilerini sys.fn_get_audit_file (T-SQL) sistem işlevi işlevini kullanın. Bu işlevi kullanma hakkında daha fazla bilgi için bkz. sys.fn_get_audit_file.

  • SQL Server Management Studio 'de Denetim Dosyalarını Birleştirme (SSMS 17'den başlayarak) kullanın:

    1. SSMS menüsünde Dosya Aç Denetim Dosyalarını > > Birleştir'i seçin.

      Denetim Dosyalarını Birleştir menü seçeneğini gösteren ekran görüntüsü.

    2. Denetim Dosyaları Ekle iletişim kutusu açılır. Denetim dosyalarını yerel bir diskten birleştirmeyi veya Azure Depolama'dan içeri aktarmayı seçmek için Ekle seçeneklerinden birini Depolama. Azure hesap ayrıntılarınızı ve hesap Depolama sağlamanız gerekir.

    3. Birleştirilecek tüm dosyalar eklendikten sonra, birleştirme işlemini tamamlamak için Tamam'a tıklayın.

    4. Birleştirilen dosya, SSMS'de açılır. Bu dosyayı görüntüp analiz edip bir CSV dosyasına veya bir tabloya dışarı aktarabilirsiniz.

  • Power BI. Denetim günlüğü verilerini veri kaynağında görüntü Power BI. Daha fazla bilgi ve indirilebilir bir şablona erişmek için bkz.Power BI.

  • Portal aracılığıyla azure Depolama blob kapsayıcısı veya azure blob kapsayıcısı gibi bir araç kullanarak günlük Azure Depolama Gezgini.

    • Yerel olarak bir günlük dosyası indirdikten sonra, SSMS'de günlükleri açmak, görüntülemek ve analiz etmek için dosyaya çift tıklayın.
    • Ayrıca, birden çok dosyayı aynı anda birden çok dosya Azure Depolama Gezgini. Bunu yapmak için belirli bir alt klasöre sağ tıklayın ve Farklı kaydet'i seçerek yerel bir klasöre kaydedin.
  • Ek yöntemler:

    • Birkaç dosyayı veya günlük dosyalarını içeren bir alt klasörü indirdikten sonra, bunları daha önce açıklanan SSMS Denetim Dosyalarını Birleştirme yönergelerinde açıklandığı gibi yerel olarak birleştirebilirsiniz.
    • Program aracılığıyla blob denetim günlüklerini görüntüleme: PowerShell kullanarak Genişletilmiş Olay Dosyalarını sorgulama.

Üretim uygulamaları

Coğrafi olarak çoğaltılmış veritabanlarını denetleme

Coğrafi olarak çoğaltılmış veritabanlarında, birincil veritabanında denetimi etkinleştirseniz ikincil veritabanı aynı denetim ilkesine sahip olur. ayrıca, birincil veritabanından bağımsız olarak ikincil sunucuda denetimi etkinleştirerek ikincil veritabanında denetimi ayarlamak da mümkündür.

  • Sunucu düzeyi (önerilen): Hem birincil sunucuda hem de ikincil sunucuda denetimi açma - birincil ve ikincil veritabanlarının her biri ilgili sunucu düzeyi ilkesine göre bağımsız olarak denetlenecek.
  • Veritabanı düzeyi: İkincil veritabanları için veritabanı düzeyinde denetim yalnızca Birincil veritabanı denetim ayarlarından yalıtabilirsiniz.
    • Denetimin sunucu üzerinde değil birincil veritabanının kendisinde etkinleştirilmesi gerekir.

    • Denetim birincil veritabanında etkinleştirildikten sonra ikincil veritabanında da etkinleştirilir.

      Önemli

      Veritabanı düzeyinde denetimle, ikincil veritabanının depolama ayarları birincil veritabanınınkilerle aynı olur ve bu da bölgeler arası trafiğe neden olur. Yalnızca sunucu düzeyinde denetimi etkinleştirmenizi ve tüm veritabanları için veritabanı düzeyinde denetimi devre dışı bırakmanızı öneririz.

Depolama yeniden oluşturma

Üretimde depolama anahtarlarınızı düzenli aralıklarla yenilemeniz olasıdır. Denetim günlüklerini Azure depolamaya yazarken, anahtarlarınızı yenilerken denetim ilkenizi yeniden kaydetmeniz gerekir. Süreç şu şekilde ilerler:

  1. altında Gelişmiş özellikler'i Depolama. Erişim Depolama İkincil'i seçin. Ardından denetim yapılandırma sayfasının üst kısmından Kaydet'e tıklayın.

    İkincil depolama erişim anahtarı seçme işlemini gösteren ekran görüntüsü.

  2. Depolama yapılandırma sayfasına gidin ve birincil erişim anahtarını yeniden üretin.

    Gezinti bölmesi

  3. Geri dön yapılandırma sayfasına gidin, ikincilden birincile depolama erişim anahtarını ve ardından Tamam'a tıklayın. Ardından denetim yapılandırma sayfasının üst kısmından Kaydet'e tıklayın.

  4. Geri dön yapılandırma sayfasına gidin ve ikincil erişim anahtarını yeniden üretin (sonraki anahtarın yenileme döngüsü için hazırlık olarak).

Denetim Azure SQL Veritabanı yönetme

Azure PowerShell’i kullanma

PowerShell cmdlet 'leri (ek filtreleme IÇIN WHERE yan tümcesi desteği dahil):

Betik örneği için bkz. PowerShell kullanarak denetim ve tehdit algılamayı yapılandırma.

REST API kullanma

REST API:

Ek filtreleme için WHERE yan tümcesi desteğiyle genişletilmiş ilke:

Azure CLI’yı kullanma

Azure Resource Manager şablonlarını kullanma

aşağıdaki örneklerde gösterildiği gibi Azure Resource Manager şablonları kullanarak Azure SQL Veritabanı denetimini yönetebilirsiniz:

Not

Bağlantılı örnekler bir dış ortak depodadır ve ' olduğu gibi ', garanti olmadan ve herhangi bir Microsoft destek programı/hizmeti kapsamında desteklenmez.

Ayrıca bkz.