DatabaseBlobAuditingPolicyProperties interface

Propriedades de uma política de auditoria de blob de banco de dados.

Propriedades

auditActionsAndGroups

Especifica o Actions-Groups e as Ações a serem auditádas.

O conjunto recomendado de grupos de ações a ser usado é 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 ativar a auditoria pelo 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 Database-Level Grupos de Ações de Auditoria.

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 suportadas para auditoria são: SELECIONAR ATUALIZAR, INSERIR EXCLUIR EXECUTAR RECEBER REFERÊNCIAS

A forma geral para definir uma ação a ser auditada é: {ação} EM {objeto} POR {principal}

Observe que <objeto> 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 public SELECT em DATABASE::myDatabase por public SELECT em SCHEMA::mySchema por public

Para obter mais informações, consulte Database-Level Ações de Auditoria

isAzureMonitorTargetEnabled

Especifica se 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 verdadeiros.

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 'mestre' como {databaseName}.

Configurações de diagnóstico Formato URI: 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 mais informações, veja Configurações de Diagnóstico API REST ou PowerShell de Configurações de Diagnóstico

isManagedIdentityInUse

Especifica se a Identidade Gerenciada é usada para acessar o armazenamento de blobs

isStorageSecondaryKeyInUse

Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento.

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 mínimo padrão é 1000 (1 segundo). O máximo é 2.147.483.647.

retentionDays

Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento.

state

Especifica o estado da auditoria. Se o estado estiver habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários.

storageAccountAccessKey

Especifica a chave do identificador da conta de armazenamento de auditoria. Se o estado estiver habilitado e o 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. Atribua ao SQL Server uma identidade gerenciada atribuída ao sistema no Azure Active Directory (AAD).
  2. Conceda à identidade do SQL Server acesso à conta de armazenamento adicionando o papel de RBAC 'Storage Blob Data Contributor' à identidade do servidor. Para obter mais informações, consulte Auditoria no armazenamento usando a autenticação de Identidade Gerenciada
storageAccountSubscriptionId

Especifica a ID da assinatura do armazenamento de blobs.

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.

Detalhes da propriedade

auditActionsAndGroups

Especifica o Actions-Groups e as Ações a serem auditádas.

O conjunto recomendado de grupos de ações a ser usado é 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 ativar a auditoria pelo 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 Database-Level Grupos de Ações de Auditoria.

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 suportadas para auditoria são: SELECIONAR ATUALIZAR, INSERIR EXCLUIR EXECUTAR RECEBER REFERÊNCIAS

A forma geral para definir uma ação a ser auditada é: {ação} EM {objeto} POR {principal}

Observe que <objeto> 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 public SELECT em DATABASE::myDatabase por public SELECT em SCHEMA::mySchema por public

Para obter mais informações, consulte Database-Level Ações de Auditoria

auditActionsAndGroups?: string[]

Valor da propriedade

string[]

isAzureMonitorTargetEnabled

Especifica se 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 verdadeiros.

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 'mestre' como {databaseName}.

Configurações de diagnóstico Formato URI: 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 mais informações, veja Configurações de Diagnóstico API REST ou PowerShell de Configurações de Diagnóstico

isAzureMonitorTargetEnabled?: boolean

Valor da propriedade

boolean

isManagedIdentityInUse

Especifica se a Identidade Gerenciada é usada para acessar o armazenamento de blobs

isManagedIdentityInUse?: boolean

Valor da propriedade

boolean

isStorageSecondaryKeyInUse

Especifica se o valor storageAccountAccessKey é a chave secundária do armazenamento.

isStorageSecondaryKeyInUse?: boolean

Valor da propriedade

boolean

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 mínimo padrão é 1000 (1 segundo). O máximo é 2.147.483.647.

queueDelayMs?: number

Valor da propriedade

number

retentionDays

Especifica o número de dias a serem mantidos nos logs de auditoria na conta de armazenamento.

retentionDays?: number

Valor da propriedade

number

state

Especifica o estado da auditoria. Se o estado estiver habilitado, storageEndpoint ou isAzureMonitorTargetEnabled serão necessários.

state: BlobAuditingPolicyState

Valor da propriedade

storageAccountAccessKey

Especifica a chave do identificador da conta de armazenamento de auditoria. Se o estado estiver habilitado e o 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. Atribua ao SQL Server uma identidade gerenciada atribuída ao sistema no Azure Active Directory (AAD).
  2. Conceda à identidade do SQL Server acesso à conta de armazenamento adicionando o papel de RBAC 'Storage Blob Data Contributor' à identidade do servidor. Para obter mais informações, consulte Auditoria no armazenamento usando a autenticação de Identidade Gerenciada
storageAccountAccessKey?: string

Valor da propriedade

string

storageAccountSubscriptionId

Especifica a ID da assinatura do armazenamento de blobs.

storageAccountSubscriptionId?: string

Valor da propriedade

string

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.

storageEndpoint?: string

Valor da propriedade

string