Database Blob Auditing Policies - Create Or Update
Cria ou atualiza a política de auditoria de blob de um banco de dados.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/auditingSettings/default?api-version=2021-11-01
Parâmetros de URI
Nome | Em | Obrigatório | Tipo | Description |
---|---|---|---|---|
blob
|
path | True |
O nome da política de auditoria de blob. |
|
database
|
path | True |
string |
O nome do banco de dados. |
resource
|
path | True |
string |
O nome do grupo de recursos que contém o recurso. Você pode obter esse valor por meio da API do Gerenciador de Recursos do Azure ou por meio do portal. |
server
|
path | True |
string |
O nome do servidor. |
subscription
|
path | True |
string |
A ID de assinatura que identifica uma assinatura do Azure. |
api-version
|
query | True |
string |
A versão da API a ser usada para a solicitação. |
Corpo da solicitação
Nome | Obrigatório | Tipo | Description |
---|---|---|---|
properties.state | True |
Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. |
|
properties.auditActionsAndGroups |
string[] |
Especifica o Actions-Groups e Ações a serem auditádas. O conjunto recomendado de grupos de ações a serem usados é a seguinte combinação : isso auditará todas as consultas e procedimentos armazenados executados no banco de dados, bem como logons bem-sucedidos e com falha: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Essa combinação acima também é o conjunto configurado por padrão ao habilitar a auditoria do portal do Azure. Os grupos de ações com suporte para auditoria são (observação: escolha apenas grupos específicos que abrangem suas necessidades de auditoria. O uso de grupos desnecessários pode levar a grandes quantidades de registros de auditoria): 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 Esses são grupos que abrangem todas as instruções sql e procedimentos armazenados executados no banco de dados e não devem ser usados em combinação com outros grupos, pois isso resultará em logs de auditoria duplicados. Para obter mais informações, consulte Grupos de ações de auditoria no nível do banco de dados. Para a política de auditoria de banco de dados, ações específicas também podem ser especificadas (observe que Ações não podem ser especificadas para a política de auditoria do servidor). As ações com suporte para auditoria são: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES O formulário geral para definir uma ação a ser auditada é: {action} ON {object} BY {principal} Observe que, no formato acima, pode se referir a um objeto como uma tabela, exibição ou procedimento armazenado ou um banco de dados ou esquema inteiro. Para os últimos casos, os formulários DATABASE::{db_name} e SCHEMA::{schema_name} são usados, respectivamente. Por exemplo: SELECT em dbo.myTable por SELECT público em DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Para obter mais informações, consulte Ações de auditoria no nível do banco de dados |
|
properties.isAzureMonitorTargetEnabled |
boolean |
Especifica se os eventos de auditoria são enviados ao Azure Monitor. Para enviar os eventos para o Azure Monitor, especifique 'State' como 'Enabled' e 'IsAzureMonitorTargetEnabled' como true. Ao usar a API REST para configurar a auditoria, as Configurações de Diagnóstico com a categoria de logs de diagnóstico 'SQLSecurityAuditEvents' no banco de dados também devem ser criadas. Observe que, para a auditoria no nível do servidor, você deve usar o banco de dados 'master' como {databaseName}. Formato de URI das Configurações de Diagnóstico: 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 Para obter mais informações, consulte API REST de Configurações de Diagnóstico ou Configurações de Diagnóstico do PowerShell |
|
properties.isManagedIdentityInUse |
boolean |
Especifica se a Identidade Gerenciada é usada para acessar o armazenamento de blobs |
|
properties.isStorageSecondaryKeyInUse |
boolean |
Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento. |
|
properties.queueDelayMs |
integer |
Especifica o período máximo, em milissegundos, que pode decorrer antes de as ações de auditorias serem forçadas a serem processadas. O valor padrão mínimo é 1000 (1 segundo). O máximo é 2.147.483.647. |
|
properties.retentionDays |
integer |
Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento. |
|
properties.storageAccountAccessKey |
string |
Especifica a chave de identificador da conta de armazenamento de auditoria. Se state for Enabled e storageEndpoint for especificado, não especificar storageAccountAccessKey usará a identidade gerenciada atribuída pelo sistema do SQL Server para acessar o armazenamento. Pré-requisitos para usar a autenticação de identidade gerenciada:
|
|
properties.storageAccountSubscriptionId |
string |
Especifica a ID da assinatura do armazenamento de blobs. |
|
properties.storageEndpoint |
string |
Especifica o ponto de extremidade de armazenamento de blobs (por exemplo, https://MyAccount.blob.core.windows.net). Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled será necessário. |
Respostas
Nome | Tipo | Description |
---|---|---|
200 OK |
Defina com êxito a política de auditoria de blob de banco de dados. |
|
201 Created |
A política de auditoria de blob de banco de dados foi criada com êxito. |
|
Other Status Codes |
Respostas de erro: ***
|
Exemplos
Create or update a database's azure monitor auditing policy with minimal parameters
Solicitação de exemplo
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
}
}
Resposta de exemplo
{
"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
Solicitação de exemplo
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
}
}
Resposta de exemplo
{
"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
Solicitação de exemplo
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"
}
}
Resposta de exemplo
{
"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
}
}
Definições
Nome | Description |
---|---|
blob |
O nome da política de auditoria de blob. |
Blob |
Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. |
Database |
Uma política de auditoria de blob de banco de dados. |
blobAuditingPolicyName
O nome da política de auditoria de blob.
Nome | Tipo | Description |
---|---|---|
default |
string |
BlobAuditingPolicyState
Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários.
Nome | Tipo | Description |
---|---|---|
Disabled |
string |
|
Enabled |
string |
DatabaseBlobAuditingPolicy
Uma política de auditoria de blob de banco de dados.
Nome | Tipo | Description |
---|---|---|
id |
string |
ID do recurso. |
kind |
string |
Tipo de recurso. |
name |
string |
Nome do recurso. |
properties.auditActionsAndGroups |
string[] |
Especifica o Actions-Groups e Ações a serem auditádas. O conjunto recomendado de grupos de ações a serem usados é a seguinte combinação : isso auditará todas as consultas e procedimentos armazenados executados no banco de dados, bem como logons bem-sucedidos e com falha: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Essa combinação acima também é o conjunto configurado por padrão ao habilitar a auditoria do portal do Azure. Os grupos de ações com suporte para auditoria são (observação: escolha apenas grupos específicos que abrangem suas necessidades de auditoria. O uso de grupos desnecessários pode levar a grandes quantidades de registros de auditoria): 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 Esses são grupos que abrangem todas as instruções sql e procedimentos armazenados executados no banco de dados e não devem ser usados em combinação com outros grupos, pois isso resultará em logs de auditoria duplicados. Para obter mais informações, consulte Grupos de ações de auditoria no nível do banco de dados. Para a política de auditoria de banco de dados, ações específicas também podem ser especificadas (observe que Ações não podem ser especificadas para a política de auditoria do servidor). As ações com suporte para auditoria são: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES O formulário geral para definir uma ação a ser auditada é: {action} ON {object} BY {principal} Observe que, no formato acima, pode se referir a um objeto como uma tabela, exibição ou procedimento armazenado ou um banco de dados ou esquema inteiro. Para os últimos casos, os formulários DATABASE::{db_name} e SCHEMA::{schema_name} são usados, respectivamente. Por exemplo: SELECT em dbo.myTable por SELECT público em DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Para obter mais informações, consulte Ações de auditoria no nível do banco de dados |
properties.isAzureMonitorTargetEnabled |
boolean |
Especifica se os eventos de auditoria são enviados ao Azure Monitor. Para enviar os eventos para o Azure Monitor, especifique 'State' como 'Enabled' e 'IsAzureMonitorTargetEnabled' como true. Ao usar a API REST para configurar a auditoria, as Configurações de Diagnóstico com a categoria de logs de diagnóstico 'SQLSecurityAuditEvents' no banco de dados também devem ser criadas. Observe que, para a auditoria no nível do servidor, você deve usar o banco de dados 'master' como {databaseName}. Formato de URI das Configurações de Diagnóstico: 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 Para obter mais informações, consulte API REST de Configurações de Diagnóstico ou Configurações de Diagnóstico do PowerShell |
properties.isManagedIdentityInUse |
boolean |
Especifica se a Identidade Gerenciada é usada para acessar o armazenamento de blobs |
properties.isStorageSecondaryKeyInUse |
boolean |
Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento. |
properties.queueDelayMs |
integer |
Especifica o período máximo, em milissegundos, que pode decorrer antes de as ações de auditorias serem forçadas a serem processadas. O valor padrão mínimo é 1000 (1 segundo). O máximo é 2.147.483.647. |
properties.retentionDays |
integer |
Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento. |
properties.state |
Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. |
|
properties.storageAccountAccessKey |
string |
Especifica a chave de identificador da conta de armazenamento de auditoria. Se state for Enabled e storageEndpoint for especificado, não especificar storageAccountAccessKey usará a identidade gerenciada atribuída pelo sistema do SQL Server para acessar o armazenamento. Pré-requisitos para usar a autenticação de identidade gerenciada:
|
properties.storageAccountSubscriptionId |
string |
Especifica a ID da assinatura do armazenamento de blobs. |
properties.storageEndpoint |
string |
Especifica o ponto de extremidade de armazenamento de blobs (por exemplo, https://MyAccount.blob.core.windows.net). Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled será necessário. |
type |
string |
Tipo de recurso. |