DatabaseBlobAuditingPolicyProperties interface
Bir veritabanı blob denetim politikasının özellikleri.
Özellikler
| audit |
Denetlenecek Actions-Groups ve Eylemleri belirtir. Kullanılması önerilen eylem grubu kümesi aşağıdaki bileşimdir: Bu, veritabanında 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. Yukarıdaki bu kombinasyon, Azure portalından denetim etkinleştirildiğinde varsayılan olarak yapılandırılan kümedir. Denetlenecek desteklenen eylem grupları şunlardır (not: Yalnızca denetim gereksinimlerinizi karşılayan belirli grupları seçin. Gereksiz grupların kullanılması çok büyük miktarda denetim kaydına yol açabilir: APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_ OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP Bunlar, veritabanında yürütülen tüm SQL deyimlerini ve saklı yordamları kapsayan gruplardır ve yinelenen denetim günlüklerine neden olacağı için diğer gruplarla birlikte kullanılmamalıdır. Daha fazla bilgi için bkz. denetim eylem gruplarını Database-Level. Veritabanı denetim ilkesi için belirli Eylemler de belirtilebilir (Sunucu denetim ilkesi için Eylemler belirtilemez). Denetleme için desteklenen işlemler şunlardır: SEÇ GÜNCELLEME SİLE YÜRÜT REFERANSLARI ALIN Denetlenecek bir eylemi tanımlamanın genel biçimi şudur: {action} ON {object} BY {principal} Yukarıdaki biçimde<>nesnenin tablo, görünüm veya saklı yordam ya da veritabanı ya da şemanın tamamı gibi bir nesneye başvurabileceğini unutmayın. İkinci durumlarda sırasıyla DATABASE::{db_name} ve SCHEMA::{schema_name} formları kullanılır. Örneğin: dbo.myTable üzerinde SELECT public tarafından SELECT DATABASE üzerinde SELECT DATABASE::myDatabase tarafından public SELECT on SCHEMA::mySchema by public |
| is |
Denetim olaylarının Azure İzleyici'a gönderilip gönderilmediğini belirtir. Olayları Azure İzleyici'a göndermek için 'State' olarak 'Enabled' ve 'IsAzureMonitorTargetEnabled' olarak true olarak belirtin. Denetimi yapılandırmak için REST API kullanılırken, veritabanında 'SQLSecurityAuditEvents' tanılama günlükleri kategorisine sahip Tanılama Ayarları da oluşturulmalıdır. Sunucu düzeyinde denetim için 'ana' veritabanını {databaseName} olarak kullanmanız gerektiğini unutmayın. Tanı Ayarları URI formatı: PUT Daha fazla bilgi için Tanı Ayarları REST API veya Tanı Ayarları PowerShell'e bakınız. |
| is |
Yönetilen Kimliğin blob depolamaya erişmek için kullanılıp kullanılmayacağını belirtir |
| is |
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir. |
| queue |
Denetim eylemlerinin işlenmesine zorlanmadan önce geçen süreyi milisaniye cinsinden belirtir. Varsayılan en düşük değer 1000 'dir (1 saniye). Maksimum değer 2.147.483.647'dir. |
| retention |
Depolama hesabındaki denetim günlüklerinde tutulacak gün sayısını belirtir. |
| state | Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
| storage |
Denetim depolama hesabının tanımlayıcı anahtarını belirtir. Durum Etkinse ve storageEndpoint belirtilirse, storageAccountAccessKey belirtilmemesi depolamaya erişmek için SQL server sistem tarafından atanan yönetilen kimliği kullanır. Yönetilen kimlik kimlik doğrulamasını kullanma önkoşulları:
|
| storage |
Blob depolama aboneliği kimliğini belirtir. |
| storage |
Blob depolama uç noktasını belirtir (örneğin, |
Özellik Ayrıntıları
auditActionsAndGroups
Denetlenecek Actions-Groups ve Eylemleri belirtir.
Kullanılması önerilen eylem grubu kümesi aşağıdaki bileşimdir: Bu, veritabanında 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.
Yukarıdaki bu kombinasyon, Azure portalından denetim etkinleştirildiğinde varsayılan olarak yapılandırılan kümedir.
Denetlenecek desteklenen eylem grupları şunlardır (not: Yalnızca denetim gereksinimlerinizi karşılayan belirli grupları seçin. Gereksiz grupların kullanılması çok büyük miktarda denetim kaydına yol açabilir:
APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_ OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP
Bunlar, veritabanında yürütülen tüm SQL deyimlerini ve saklı yordamları kapsayan gruplardır ve yinelenen denetim günlüklerine neden olacağı için diğer gruplarla birlikte kullanılmamalıdır.
Daha fazla bilgi için bkz. denetim eylem gruplarını Database-Level.
Veritabanı denetim ilkesi için belirli Eylemler de belirtilebilir (Sunucu denetim ilkesi için Eylemler belirtilemez). Denetleme için desteklenen işlemler şunlardır: SEÇ GÜNCELLEME SİLE YÜRÜT REFERANSLARI ALIN
Denetlenecek bir eylemi tanımlamanın genel biçimi şudur: {action} ON {object} BY {principal}
Yukarıdaki biçimde<>nesnenin tablo, görünüm veya saklı yordam ya da veritabanı ya da şemanın tamamı gibi bir nesneye başvurabileceğini unutmayın. İkinci durumlarda sırasıyla DATABASE::{db_name} ve SCHEMA::{schema_name} formları kullanılır.
Örneğin: dbo.myTable üzerinde SELECT public tarafından SELECT DATABASE üzerinde SELECT DATABASE::myDatabase tarafından public SELECT on SCHEMA::mySchema by public
Daha fazla bilgi için bkz. denetim eylemleri Database-Level
auditActionsAndGroups?: string[]
Özellik Değeri
string[]
isAzureMonitorTargetEnabled
Denetim olaylarının Azure İzleyici'a gönderilip gönderilmediğini belirtir. Olayları Azure İzleyici'a göndermek için 'State' olarak 'Enabled' ve 'IsAzureMonitorTargetEnabled' olarak true olarak belirtin.
Denetimi yapılandırmak için REST API kullanılırken, veritabanında 'SQLSecurityAuditEvents' tanılama günlükleri kategorisine sahip Tanılama Ayarları da oluşturulmalıdır. Sunucu düzeyinde denetim için 'ana' veritabanını {databaseName} olarak kullanmanız gerektiğini unutmayın.
Tanı Ayarları URI formatı: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview
Daha fazla bilgi için Tanı Ayarları REST API veya Tanı Ayarları PowerShell'e bakınız.
isAzureMonitorTargetEnabled?: boolean
Özellik Değeri
boolean
isManagedIdentityInUse
Yönetilen Kimliğin blob depolamaya erişmek için kullanılıp kullanılmayacağını belirtir
isManagedIdentityInUse?: boolean
Özellik Değeri
boolean
isStorageSecondaryKeyInUse
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir.
isStorageSecondaryKeyInUse?: boolean
Özellik Değeri
boolean
queueDelayMs
Denetim eylemlerinin işlenmesine zorlanmadan önce geçen süreyi milisaniye cinsinden belirtir. Varsayılan en düşük değer 1000 'dir (1 saniye). Maksimum değer 2.147.483.647'dir.
queueDelayMs?: number
Özellik Değeri
number
retentionDays
Depolama hesabındaki denetim günlüklerinde tutulacak gün sayısını belirtir.
retentionDays?: number
Özellik Değeri
number
state
Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir.
state: BlobAuditingPolicyState
Özellik Değeri
storageAccountAccessKey
Denetim depolama hesabının tanımlayıcı anahtarını belirtir. Durum Etkinse ve storageEndpoint belirtilirse, storageAccountAccessKey belirtilmemesi depolamaya erişmek için SQL server sistem tarafından atanan yönetilen kimliği kullanır. Yönetilen kimlik kimlik doğrulamasını kullanma önkoşulları:
- SQL Server'a sistem tarafından atanan yönetilen kimlik in Azure Active Directory (AAD) içinde assign edin.
- Sunucu kimliğine 'Storage Blob Data Contributor' RBAC rolü ekleyerek SQL Server kimliğine erişim izni verin. Daha fazla bilgi için bkz. Yönetilen Kimlik kimlik doğrulaması kullanarak depolama için denetim
storageAccountAccessKey?: string
Özellik Değeri
string
storageAccountSubscriptionId
Blob depolama aboneliği kimliğini belirtir.
storageAccountSubscriptionId?: string
Özellik Değeri
string
storageEndpoint
Blob depolama uç noktasını belirtir (örneğin, https://MyAccount.blob.core.windows.net). Durum Etkinse storageEndpoint veyaAzureMonitorTargetEnabled gereklidir.
storageEndpoint?: string
Özellik Değeri
string