Extended Server Blob Auditing Policies - Create Or Update
Genişletilmiş sunucunun blob denetim ilkesini oluşturur veya güncelleştirir.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/default?api-version=2021-11-01
URI Parametreleri
Name | İçinde | Gerekli | Tür | Description |
---|---|---|---|---|
blob
|
path | True |
Blob denetim ilkesinin adı. |
|
resource
|
path | True |
string |
Kaynağı içeren kaynak grubunun adı. Bu değeri Azure Resource Manager API'sinden veya portaldan alabilirsiniz. |
server
|
path | True |
string |
Sunucunun adı. |
subscription
|
path | True |
string |
Azure aboneliğini tanımlayan abonelik kimliği. |
api-version
|
query | True |
string |
İstek için kullanılacak API sürümü. |
İstek Gövdesi
Name | Gerekli | Tür | Description |
---|---|---|---|
properties.state | True |
Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
|
properties.auditActionsAndGroups |
string[] |
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. Bu yukarıdaki birleşim, Azure portal denetimi etkinleştirilirken 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 miktarlarda 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. Veritabanı Düzeyinde Denetim Eylem Grupları. Veritabanı denetim ilkesi için belirli Eylemler de belirtilebilir (Sunucu denetim ilkesi için Eylemler belirtilemez). Denetlenecek desteklenen eylemler şunlardır: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES Denetlenecek eylemi tanımlamaya yönelik genel form: {action} ON {object} BY {principal} Yukarıdaki biçimde tablo, görünüm veya saklı yordam gibi bir nesneye ya da veritabanı veya şemanın tamamına başvurabileceğini unutmayın. İkinci durumlarda sırasıyla DATABASE::{db_name} ve SCHEMA::{schema_name} formları kullanılır. Örneğin: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Daha fazla bilgi için bkz . Veritabanı Düzeyinde Denetim Eylemleri |
|
properties.isAzureMonitorTargetEnabled |
boolean |
Denetim olaylarının Azure İzleyici'ye gönderilip gönderilmediğini belirtir. Olayları Azure İzleyici'ye göndermek için 'State' değerini 'Enabled' ve 'IsAzureMonitorTargetEnabled' değerini 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ılama Ayarları URI biçimi: 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 bkz . Tanılama Ayarları REST API'si veya Tanılama Ayarları PowerShell |
|
properties.isDevopsAuditEnabled |
boolean |
Devops denetiminin durumunu belirtir. Durum Etkin ise devops günlükleri Azure İzleyici'ye gönderilir. Olayları Azure İzleyici'ye göndermek için 'State' değerini 'Enabled', 'IsAzureMonitorTargetEnabled' değerini true ve 'IsDevopsAuditEnabled' değerini true olarak belirtin Denetimi yapılandırmak için REST API kullanılırken, ana veritabanında 'DevOpsOperationsAudit' tanılama günlükleri kategorisine sahip Tanılama Ayarları da oluşturulmalıdır. Tanılama Ayarları URI biçimi: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview Daha fazla bilgi için bkz . Tanılama Ayarları REST API'si veya Tanılama Ayarları PowerShell |
|
properties.isManagedIdentityInUse |
boolean |
Yönetilen Kimliğin blob depolamaya erişmek için kullanılıp kullanılmayacağını belirtir |
|
properties.isStorageSecondaryKeyInUse |
boolean |
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir. |
|
properties.predicateExpression |
string |
Denetim oluştururken where yan tümcesinin koşulunu belirtir. |
|
properties.queueDelayMs |
integer |
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. |
|
properties.retentionDays |
integer |
Depolama hesabındaki denetim günlüklerinde tutulacak gün sayısını belirtir. |
|
properties.storageAccountAccessKey |
string |
Denetim depolama hesabının tanımlayıcı anahtarını belirtir. Durum Etkinse ve storageEndpoint belirtilirse storageAccountAccessKey belirtilmediğinde depolamaya erişmek için SQL server sistem tarafından atanan yönetilen kimlik kullanılır. Yönetilen kimlik kimlik doğrulamasını kullanmak için önkoşullar:
|
|
properties.storageAccountSubscriptionId |
string |
Blob depolama abonelik kimliğini belirtir. |
|
properties.storageEndpoint |
string |
Blob depolama uç noktasını belirtir (örneğin https://MyAccount.blob.core.windows.net). Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
Yanıtlar
Name | Tür | Description |
---|---|---|
200 OK |
Genişletilmiş denetim ayarları başarıyla güncelleştirildi. |
|
202 Accepted |
Genişletilmiş denetim ayarlarını güncelleştirme işlemi devam ediyor. |
|
Other Status Codes |
Hata Yanıtları: ***
|
Örnekler
Update a server's extended blob auditing policy with all parameters |
Update a server's extended blob auditing policy with minimal parameters |
Update a server's extended blob auditing policy with all parameters
Örnek isteği
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"predicateExpression": "object_name = 'SensitiveData'",
"isAzureMonitorTargetEnabled": true
}
}
Örnek yanıt
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default",
"name": "default",
"type": "Microsoft.Sql/servers/extendedAuditingSettings",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"predicateExpression": "object_name = 'SensitiveData'",
"isAzureMonitorTargetEnabled": true
}
}
Update a server's extended blob auditing policy with minimal parameters
Örnek isteği
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net"
}
}
Örnek yanıt
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default",
"name": "default",
"type": "Microsoft.Sql/servers/extendedAuditingSettings",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"isAzureMonitorTargetEnabled": false
}
}
Tanımlar
Name | Description |
---|---|
blob |
Blob denetim ilkesinin adı. |
Blob |
Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
Extended |
Genişletilmiş sunucu blobu denetim ilkesi. |
blobAuditingPolicyName
Blob denetim ilkesinin adı.
Name | Tür | Description |
---|---|---|
default |
string |
BlobAuditingPolicyState
Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir.
Name | Tür | Description |
---|---|---|
Disabled |
string |
|
Enabled |
string |
ExtendedServerBlobAuditingPolicy
Genişletilmiş sunucu blobu denetim ilkesi.
Name | Tür | Description |
---|---|---|
id |
string |
Kaynak Kimliği. |
name |
string |
Kaynak adı. |
properties.auditActionsAndGroups |
string[] |
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. Bu yukarıdaki birleşim, Azure portal denetimi etkinleştirilirken 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 miktarlarda 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. Veritabanı Düzeyinde Denetim Eylem Grupları. Veritabanı denetim ilkesi için belirli Eylemler de belirtilebilir (Sunucu denetim ilkesi için Eylemler belirtilemez). Denetlenecek desteklenen eylemler şunlardır: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES Denetlenecek eylemi tanımlamaya yönelik genel form: {action} ON {object} BY {principal} Yukarıdaki biçimde tablo, görünüm veya saklı yordam gibi bir nesneye ya da veritabanı veya şemanın tamamına başvurabileceğini unutmayın. İkinci durumlarda sırasıyla DATABASE::{db_name} ve SCHEMA::{schema_name} formları kullanılır. Örneğin: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Daha fazla bilgi için bkz . Veritabanı Düzeyinde Denetim Eylemleri |
properties.isAzureMonitorTargetEnabled |
boolean |
Denetim olaylarının Azure İzleyici'ye gönderilip gönderilmediğini belirtir. Olayları Azure İzleyici'ye göndermek için 'State' değerini 'Enabled' ve 'IsAzureMonitorTargetEnabled' değerini 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ılama Ayarları URI biçimi: 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 bkz . Tanılama Ayarları REST API'si veya Tanılama Ayarları PowerShell |
properties.isDevopsAuditEnabled |
boolean |
Devops denetiminin durumunu belirtir. Durum Etkin ise devops günlükleri Azure İzleyici'ye gönderilir. Olayları Azure İzleyici'ye göndermek için 'State' değerini 'Enabled', 'IsAzureMonitorTargetEnabled' değerini true ve 'IsDevopsAuditEnabled' değerini true olarak belirtin Denetimi yapılandırmak için REST API kullanılırken, ana veritabanında 'DevOpsOperationsAudit' tanılama günlükleri kategorisine sahip Tanılama Ayarları da oluşturulmalıdır. Tanılama Ayarları URI biçimi: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview Daha fazla bilgi için bkz . Tanılama Ayarları REST API'si veya Tanılama Ayarları PowerShell |
properties.isManagedIdentityInUse |
boolean |
Yönetilen Kimliğin blob depolamaya erişmek için kullanılıp kullanılmayacağını belirtir |
properties.isStorageSecondaryKeyInUse |
boolean |
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir. |
properties.predicateExpression |
string |
Denetim oluştururken where yan tümcesinin koşulunu belirtir. |
properties.queueDelayMs |
integer |
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. |
properties.retentionDays |
integer |
Depolama hesabındaki denetim günlüklerinde tutulacak gün sayısını belirtir. |
properties.state |
Denetimin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
|
properties.storageAccountAccessKey |
string |
Denetim depolama hesabının tanımlayıcı anahtarını belirtir. Durum Etkinse ve storageEndpoint belirtilirse storageAccountAccessKey belirtilmediğinde depolamaya erişmek için SQL server sistem tarafından atanan yönetilen kimlik kullanılır. Yönetilen kimlik kimlik doğrulamasını kullanmak için önkoşullar:
|
properties.storageAccountSubscriptionId |
string |
Blob depolama abonelik kimliğini belirtir. |
properties.storageEndpoint |
string |
Blob depolama uç noktasını belirtir (örneğin https://MyAccount.blob.core.windows.net). Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
type |
string |
Kaynak türü. |