Microsoft.Sql servers/databases/auditingSettings 2020-08-01-preview

Definição de recurso do Bicep

O tipo de recurso servers/databases/auditingSettings pode ser implantado com operações direcionadas:

Para obter uma lista das propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso Microsoft.Sql/servers/databases/auditingSettings, adicione o seguinte Bicep ao modelo.

resource symbolicname 'Microsoft.Sql/servers/databases/auditingSettings@2020-08-01-preview' = {
  name: 'default'
  parent: resourceSymbolicName
  properties: {
    auditActionsAndGroups: [
      'string'
    ]
    isAzureMonitorTargetEnabled: bool
    isStorageSecondaryKeyInUse: bool
    queueDelayMs: int
    retentionDays: int
    state: 'string'
    storageAccountAccessKey: 'string'
    storageAccountSubscriptionId: 'string'
    storageEndpoint: 'string'
  }
}

Valores de propriedade

servers/databases/auditingSettings

Nome Descrição Valor
name O nome do recurso

Veja como definir nomes e tipos para recursos filho no Bicep.
'default'
pai No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte Recurso filho fora do recurso pai.
Nome simbólico para o recurso do tipo: bancos de dados
properties Propriedades do recurso. DatabaseBlobAuditingPolicyProperties

DatabaseBlobAuditingPolicyProperties

Nome Descrição Valor
auditActionsAndGroups 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
SUCCESSFUL_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

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 (excluir)
Execute
RECEIVE
REFERENCES

O formulário geral para definir uma ação a ser auditada é:
{action} ON {object} BY {principal}

Observe que {object} 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 público
SELECT em DATABASE::myDatabase por public
SELECT em SCHEMA::mySchema por público

Para obter mais informações, consulte Ações de auditoria no nível do banco de dados
string[]
isAzureMonitorTargetEnabled 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 do 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
bool
isStorageSecondaryKeyInUse Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento. bool
queueDelayMs 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.
INT
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento. INT
state Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. 'Desabilitado'
'Enabled' (obrigatório)
storageAccountAccessKey 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:
1. Atribua SQL Server uma identidade gerenciada atribuída pelo sistema no AAD (Azure Active Directory).
2. Conceda a SQL Server acesso de identidade à conta de armazenamento adicionando a função RBAC 'Colaborador de Dados de Blob de Armazenamento' à identidade do servidor.
Para obter mais informações, consulte Auditoria no armazenamento usando a autenticação de Identidade Gerenciada
string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.
storageAccountSubscriptionId Especifica a ID da assinatura do armazenamento de blobs. string

Restrições:
Comprimento mínimo = 36
Comprimento máximo = 36
Padrão = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
storageEndpoint 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. string

Definição de recurso de modelo do ARM

O tipo de recurso servers/databases/auditingSettings pode ser implantado com operações direcionadas:

Para obter uma lista das propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso Microsoft.Sql/servers/databases/auditingSettings, adicione o JSON a seguir ao modelo.

{
  "type": "Microsoft.Sql/servers/databases/auditingSettings",
  "apiVersion": "2020-08-01-preview",
  "name": "default",
  "properties": {
    "auditActionsAndGroups": [ "string" ],
    "isAzureMonitorTargetEnabled": "bool",
    "isStorageSecondaryKeyInUse": "bool",
    "queueDelayMs": "int",
    "retentionDays": "int",
    "state": "string",
    "storageAccountAccessKey": "string",
    "storageAccountSubscriptionId": "string",
    "storageEndpoint": "string"
  }
}

Valores de propriedade

servers/databases/auditingSettings

Nome Descrição Valor
tipo O tipo de recurso 'Microsoft.Sql/servers/databases/auditingSettings'
apiVersion A versão da API do recurso '2020-08-01-preview'
name O nome do recurso

Veja como definir nomes e tipos para recursos filho em modelos do ARM JSON.
'default'
properties Propriedades do recurso. DatabaseBlobAuditingPolicyProperties

DatabaseBlobAuditingPolicyProperties

Nome Descrição Valor
auditActionsAndGroups 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
SUCCESSFUL_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

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ção 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 As ações não podem ser especificadas para a política de auditoria de servidor). As ações com suporte para auditoria são:
SELECT
UPDATE
INSERT
Delete (excluir)
Execute
RECEIVE
REFERENCES

O formulário geral para definir uma ação a ser auditada é:
{action} ON {object} BY {principal}

Observe que {object} 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 público
SELECT em DATABASE::myDatabase por público
SELECT em SCHEMA::mySchema por público

Para obter mais informações, consulte Ações de auditoria no nível do banco de dados
string[]
isAzureMonitorTargetEnabled Especifica se os eventos de auditoria são enviados para o 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 auditoria no nível do servidor, você deve usar o banco de dados 'master' como {databaseName}.

Formato de URI de 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
bool
isStorageSecondaryKeyInUse Especifica se storageAccountAccessKey é a chave secundária do armazenamento. bool
queueDelayMs 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.
INT
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento. INT
state Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. 'Desabilitado'
'Enabled' (obrigatório)
storageAccountAccessKey Especifica a chave de identificador da conta de armazenamento de auditoria.
Se o estado estiver Habilitado e storageEndpoint for especificado, não especificar o 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:
1. Atribuir SQL Server uma identidade gerenciada atribuída pelo sistema no AAD (Azure Active Directory).
2. Conceda a SQL Server acesso de identidade à conta de armazenamento adicionando a função RBAC 'Colaborador de Dados de Blob de Armazenamento' à identidade do servidor.
Para obter mais informações, confira Auditoria no armazenamento usando a autenticação de Identidade Gerenciada
string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.
storageAccountSubscriptionId Especifica a ID da assinatura de armazenamento de blobs. string

Restrições:
Comprimento mínimo = 36
Comprimento máximo = 36
Padrão = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
storageEndpoint 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. string

Definição de recurso do Terraform (provedor AzAPI)

O tipo de recurso servers/databases/auditingSettings pode ser implantado com operações direcionadas:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato de recurso

Para criar um recurso Microsoft.Sql/servers/databases/auditingSettings, adicione o Terraform a seguir ao modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/databases/auditingSettings@2020-08-01-preview"
  name = "default"
  parent_id = "string"
  body = jsonencode({
    properties = {
      auditActionsAndGroups = [
        "string"
      ]
      isAzureMonitorTargetEnabled = bool
      isStorageSecondaryKeyInUse = bool
      queueDelayMs = int
      retentionDays = int
      state = "string"
      storageAccountAccessKey = "string"
      storageAccountSubscriptionId = "string"
      storageEndpoint = "string"
    }
  })
}

Valores de propriedade

servers/databases/auditingSettings

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.Sql/servers/databases/auditingSettings@2020-08-01-preview"
name O nome do recurso "default"
parent_id A ID do recurso que é o pai desse recurso. ID do recurso do tipo: bancos de dados
properties Propriedades do recurso. DatabaseBlobAuditingPolicyProperties

DatabaseBlobAuditingPolicyProperties

Nome Descrição Valor
auditActionsAndGroups 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
SUCCESSFUL_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

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 (excluir)
Execute
RECEIVE
REFERENCES

O formulário geral para definir uma ação a ser auditada é:
{action} ON {object} BY {principal}

Observe que {object} 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 público
SELECT em DATABASE::myDatabase por public
SELECT em SCHEMA::mySchema por público

Para obter mais informações, consulte Ações de auditoria no nível do banco de dados
string[]
isAzureMonitorTargetEnabled 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 do 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
bool
isStorageSecondaryKeyInUse Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento. bool
queueDelayMs 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.
INT
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento. INT
state Especifica o estado da auditoria. Se o estado estiver Habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários. "Desabilitado"
"Habilitado" (obrigatório)
storageAccountAccessKey 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:
1. Atribua SQL Server uma identidade gerenciada atribuída pelo sistema no AAD (Azure Active Directory).
2. Conceda a SQL Server acesso de identidade à conta de armazenamento adicionando a função RBAC 'Colaborador de Dados de Blob de Armazenamento' à identidade do servidor.
Para obter mais informações, consulte Auditoria no armazenamento usando a autenticação de Identidade Gerenciada
string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.
storageAccountSubscriptionId Especifica a ID da assinatura do armazenamento de blobs. string

Restrições:
Comprimento mínimo = 36
Comprimento máximo = 36
Padrão = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
storageEndpoint 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. string