Sql Pool Blob Auditing Policies - Create Or Update
SQL havuzunun blob denetim ilkesini oluşturur veya güncelleştirir.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/auditingSettings/default?api-version=2021-06-01
URI Parametreleri
Name | İçinde | Gerekli | Tür | Description |
---|---|---|---|---|
blob
|
path | True |
Blob denetim ilkesinin adı. |
|
resource
|
path | True |
string |
Kaynak grubunun adı. Ad büyük/küçük harfe duyarlı değildir. |
sql
|
path | True |
string |
SQL havuzu adı |
subscription
|
path | True |
string |
Hedef aboneliğin kimliği. |
workspace
|
path | True |
string |
Çalışma alanının adı. |
api-version
|
query | True |
string |
Bu işlem için kullanılacak API sürümü. |
İstek Gövdesi
Name | Gerekli | Tür | Description |
---|---|---|---|
properties.state | True |
İlkenin 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 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.isStorageSecondaryKeyInUse |
boolean |
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir. |
|
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 gereklidir. |
|
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 gereklidir. |
Yanıtlar
Name | Tür | Description |
---|---|---|
200 OK |
Sql havuzu blobu denetim ilkesini başarıyla ayarlama |
|
201 Created |
Sql havuzu blobu denetim ilkesi başarıyla oluşturuldu. |
|
Other Status Codes |
Hata Yanıtları: ***
|
Örnekler
Create or update a database's blob auditing policy with all parameters |
Create or update a database's blob auditing policy with minimal parameters |
Create or update a database's blob auditing policy with all parameters
Sample Request
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb/auditingSettings/default?api-version=2021-06-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,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
Sample Response
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb",
"name": "default",
"type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb",
"name": "default",
"type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
Create or update a database's blob auditing policy with minimal parameters
Sample Request
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb/auditingSettings/default?api-version=2021-06-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net"
}
}
Sample Response
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb",
"name": "default",
"type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"isAzureMonitorTargetEnabled": false
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb",
"name": "default",
"type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-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 |
İlkenin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir. |
Sql |
Sql havuzu blobu denetim ilkesi. |
BlobAuditingPolicyName
Blob denetim ilkesinin adı.
Name | Tür | Description |
---|---|---|
default |
string |
BlobAuditingPolicyState
İlkenin durumunu belirtir. Durum Etkinse storageEndpoint veya IsAzureMonitorTargetEnabled gereklidir.
Name | Tür | Description |
---|---|---|
Disabled |
string |
|
Enabled |
string |
SqlPoolBlobAuditingPolicy
Sql havuzu blobu denetim ilkesi.
Name | Tür | Varsayılan değer | Description |
---|---|---|---|
id |
string |
Kaynağın tam kaynak kimliği. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
|
kind |
string |
Kaynak türü. |
|
name |
string |
Kaynağın 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 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 |
False |
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.isStorageSecondaryKeyInUse |
boolean |
storageAccountAccessKey değerinin depolamanın ikincil anahtarı olup olmadığını belirtir. |
|
properties.retentionDays |
integer |
Depolama hesabındaki denetim günlüklerinde tutulacak gün sayısını belirtir. |
|
properties.state |
İlkenin 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 gereklidir. |
|
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 gereklidir. |
|
type |
string |
Kaynağın türü. Örneğin, "Microsoft.Compute/virtualMachines" veya "Microsoft.Storage/storageAccounts" |