Database Blob Auditing Policies - Create Or Update
Skapar eller uppdaterar en databass blobgranskningsprincip.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/auditingSettings/default?api-version=2021-11-01
URI-parametrar
Name | I | Obligatorisk | Typ | Description |
---|---|---|---|---|
blob
|
path | True |
Namnet på blobgranskningsprincipen. |
|
database
|
path | True |
string |
Namnet på databasen. |
resource
|
path | True |
string |
Namnet på resursgruppen som innehåller resursen. Du kan hämta det här värdet från Azure Resource Manager-API:et eller portalen. |
server
|
path | True |
string |
Namnet på servern. |
subscription
|
path | True |
string |
Prenumerations-ID:t som identifierar en Azure-prenumeration. |
api-version
|
query | True |
string |
DEN API-version som ska användas för begäran. |
Begärandetext
Name | Obligatorisk | Typ | Description |
---|---|---|---|
properties.state | True |
Anger granskningstillståndet. Om tillståndet är Aktiverat krävs storageEndpoint eller isAzureMonitorTargetEnabled. |
|
properties.auditActionsAndGroups |
string[] |
Anger Actions-Groups och åtgärder som ska granskas. Den rekommenderade uppsättningen åtgärdsgrupper som ska användas är följande kombination – detta granskar alla frågor och lagrade procedurer som körs mot databasen, samt lyckade och misslyckade inloggningar: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Den här kombinationen ovan är också den uppsättning som konfigureras som standard när granskning aktiveras från Azure Portal. De åtgärdsgrupper som stöds för granskning är (obs! Välj endast specifika grupper som täcker dina granskningsbehov. Användning av onödiga grupper kan leda till mycket stora mängder granskningsposter: 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 Det här är grupper som omfattar alla SQL-instruktioner och lagrade procedurer som körs mot databasen och som inte ska användas i kombination med andra grupper eftersom detta resulterar i dubbletter av granskningsloggar. Mer information finns i Granskningsåtgärdsgrupper på databasnivå. För databasgranskningsprincip kan specifika åtgärder också anges (observera att Åtgärder inte kan anges för servergranskningsprincipen). De åtgärder som stöds för granskning är: VÄLJ UPPDATERA INFOGA TA BORT KÖR TA EMOT REFERENSER Det allmänna formuläret för att definiera en åtgärd som ska granskas är: {action} ON {object} BY {principal} Observera att i ovanstående format kan referera till ett objekt som en tabell, vy eller lagrad procedur, eller en hel databas eller ett helt schema. I de senare fallen används formulären DATABASE::{db_name} respektive SCHEMA::{schema_name}. Exempel: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Mer information finns i Granskningsåtgärder på databasnivå |
|
properties.isAzureMonitorTargetEnabled |
boolean |
Anger om granskningshändelser skickas till Azure Monitor. För att kunna skicka händelserna till Azure Monitor anger du "State" som "Enabled" och "IsAzureMonitorTargetEnabled" som true. När du använder REST API för att konfigurera granskning bör diagnostikinställningar med diagnostikloggkategorin SQLSecurityAuditEvents på databasen också skapas. Observera att för granskning på servernivå bör du använda huvuddatabasen som {databaseName}. URI-format för diagnostikinställningar: 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 Mer information finns i Diagnostikinställningar REST API eller Diagnostikinställningar PowerShell |
|
properties.isManagedIdentityInUse |
boolean |
Anger om hanterad identitet används för åtkomst till bloblagring |
|
properties.isStorageSecondaryKeyInUse |
boolean |
Anger om storageAccountAccessKey-värdet är lagringens sekundära nyckel. |
|
properties.queueDelayMs |
integer |
Anger hur lång tid i millisekunder som kan förflutit innan granskningsåtgärder tvingas bearbetas. Standardvärdet är 1 000 (1 sekund). Maxvärdet är 2 147 483 647. |
|
properties.retentionDays |
integer |
Anger hur många dagar som ska behållas i granskningsloggarna på lagringskontot. |
|
properties.storageAccountAccessKey |
string |
Anger identifierarnyckeln för granskningslagringskontot. Om tillståndet är Aktiverat och storageEndpoint har angetts används SQL Server-systemtilldelad hanterad identitet för att komma åt lagringen genom att inte ange storageAccountAccessKey. Krav för att använda autentisering med hanterad identitet:
|
|
properties.storageAccountSubscriptionId |
string |
Anger prenumerations-ID:t för Blob Storage. |
|
properties.storageEndpoint |
string |
Anger bloblagringsslutpunkten (t.ex. https://MyAccount.blob.core.windows.net). Om tillståndet är Aktiverat krävs storageEndpoint ellerazureMonitorTargetEnabled. |
Svar
Name | Typ | Description |
---|---|---|
200 OK |
Konfigurera databasblobgranskningsprincipen. |
|
201 Created |
Databasblobgranskningsprincipen har skapats. |
|
Other Status Codes |
Felsvar: ***
|
Exempel
Create or update a database's azure monitor auditing policy with minimal parameters
Exempelbegäran
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true
}
}
Exempelsvar
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true,
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
]
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true,
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
]
}
}
Create or update a database's blob auditing policy with all parameters
Exempelbegäran
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/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": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
Exempelsvar
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"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.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"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
Exempelbegäran
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net"
}
}
Exempelsvar
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/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.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/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
}
}
Definitioner
Name | Description |
---|---|
blob |
Namnet på blobgranskningsprincipen. |
Blob |
Anger granskningstillståndet. Om tillståndet är Aktiverat krävs storageEndpoint eller isAzureMonitorTargetEnabled. |
Database |
En databasblobgranskningsprincip. |
blobAuditingPolicyName
Namnet på blobgranskningsprincipen.
Name | Typ | Description |
---|---|---|
default |
string |
BlobAuditingPolicyState
Anger granskningstillståndet. Om tillståndet är Aktiverat krävs storageEndpoint eller isAzureMonitorTargetEnabled.
Name | Typ | Description |
---|---|---|
Disabled |
string |
|
Enabled |
string |
DatabaseBlobAuditingPolicy
En databasblobgranskningsprincip.
Name | Typ | Description |
---|---|---|
id |
string |
Resurs-ID. |
kind |
string |
Resurstyp. |
name |
string |
Resursnamn. |
properties.auditActionsAndGroups |
string[] |
Anger Actions-Groups och åtgärder som ska granskas. Den rekommenderade uppsättningen åtgärdsgrupper som ska användas är följande kombination – detta granskar alla frågor och lagrade procedurer som körs mot databasen, samt lyckade och misslyckade inloggningar: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Den här kombinationen ovan är också den uppsättning som konfigureras som standard när granskning aktiveras från Azure Portal. De åtgärdsgrupper som stöds för granskning är (obs! Välj endast specifika grupper som täcker dina granskningsbehov. Användning av onödiga grupper kan leda till mycket stora mängder granskningsposter: 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 Det här är grupper som omfattar alla SQL-instruktioner och lagrade procedurer som körs mot databasen och som inte ska användas i kombination med andra grupper eftersom detta resulterar i dubbletter av granskningsloggar. Mer information finns i Granskningsåtgärdsgrupper på databasnivå. För databasgranskningsprincip kan specifika åtgärder också anges (observera att Åtgärder inte kan anges för servergranskningsprincipen). De åtgärder som stöds för granskning är: VÄLJ UPPDATERA INFOGA TA BORT KÖR TA EMOT REFERENSER Det allmänna formuläret för att definiera en åtgärd som ska granskas är: {action} ON {object} BY {principal} Observera att i ovanstående format kan referera till ett objekt som en tabell, vy eller lagrad procedur, eller en hel databas eller ett helt schema. I de senare fallen används formulären DATABASE::{db_name} respektive SCHEMA::{schema_name}. Exempel: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Mer information finns i Granskningsåtgärder på databasnivå |
properties.isAzureMonitorTargetEnabled |
boolean |
Anger om granskningshändelser skickas till Azure Monitor. För att kunna skicka händelserna till Azure Monitor anger du "State" som "Enabled" och "IsAzureMonitorTargetEnabled" som true. När du använder REST API för att konfigurera granskning bör diagnostikinställningar med diagnostikloggkategorin SQLSecurityAuditEvents på databasen också skapas. Observera att för granskning på servernivå bör du använda huvuddatabasen som {databaseName}. URI-format för diagnostikinställningar: 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 Mer information finns i Diagnostikinställningar REST API eller Diagnostikinställningar PowerShell |
properties.isManagedIdentityInUse |
boolean |
Anger om hanterad identitet används för åtkomst till bloblagring |
properties.isStorageSecondaryKeyInUse |
boolean |
Anger om storageAccountAccessKey-värdet är lagringens sekundära nyckel. |
properties.queueDelayMs |
integer |
Anger hur lång tid i millisekunder som kan förflutit innan granskningsåtgärder tvingas bearbetas. Standardvärdet är 1 000 (1 sekund). Maxvärdet är 2 147 483 647. |
properties.retentionDays |
integer |
Anger hur många dagar som ska behållas i granskningsloggarna på lagringskontot. |
properties.state |
Anger granskningstillståndet. Om tillståndet är Aktiverat krävs storageEndpoint eller isAzureMonitorTargetEnabled. |
|
properties.storageAccountAccessKey |
string |
Anger identifierarnyckeln för granskningslagringskontot. Om tillståndet är Aktiverat och storageEndpoint har angetts används SQL Server-systemtilldelad hanterad identitet för att komma åt lagringen genom att inte ange storageAccountAccessKey. Krav för att använda autentisering med hanterad identitet:
|
properties.storageAccountSubscriptionId |
string |
Anger prenumerations-ID:t för Blob Storage. |
properties.storageEndpoint |
string |
Anger bloblagringsslutpunkten (t.ex. https://MyAccount.blob.core.windows.net). Om tillståndet är Aktiverat krävs storageEndpoint ellerazureMonitorTargetEnabled. |
type |
string |
Resurstyp. |