Tutorial: configurar logs de auditoria usando o Banco de Dados do Azure para MySQL - Servidor Flexível

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor flexível

Você pode usar o Banco de Dados do Azure para o servidor flexível MySQL para configurar logs de auditoria. Os logs de auditoria podem ser usados para rastrear atividades no nível do banco de dados, incluindo eventos de conexão, administração, DDL (linguagem de definição de dados) e DML (linguagem de manipulação de dados). Esses tipos de logs são comumente usados para fins de conformidade. Normalmente, você usa a auditoria de banco de dados para:

  • Contabilizar todas as ações que ocorrem dentro de um esquema, tabela ou linha específica ou que afetam um conteúdo específico.
  • Impedir que usuários (ou outras pessoas) executem ações inadequadas de acordo com a respectiva responsabilidade.
  • Investigar atividades suspeitas.
  • Monitorar e coletar dados sobre atividades específicas do banco de dados.

Este artigo descreve como usar logs de auditoria do MySQL, ferramentas do Log Analytics ou um modelo de pasta de trabalho para visualizar informações de auditoria para o Banco de Dados do Azure para servidor flexível MySQL.

Neste tutorial, você aprenderá como:

  • Configurar a auditoria usando o portal do Azure ou a CLI do Azure
  • Configurar os diagnósticos
  • Exibir logs de auditoria usando o Log Analytics
  • Exibir logs de auditoria usando pastas de trabalho

Pré-requisitos

Configurar a auditoria usando o portal do Azure

  1. Entre no portal do Azure.

  2. Selecione a sua instância de servidor flexível.

  3. No painel à esquerda, em Configurações, selecione Parâmetros do servidor.

    Screenshot showing the 'Server parameters' list.

  4. Para o parâmetro audit_log_enabled, selecione ATIVADO.

    Screenshot showing the 'audit_log_enabled' parameter switched to 'ON'.

  5. Para o parâmetro audit_log_events, na lista suspensa, selecione os tipos de evento a serem registrados.

    Screenshot of the event options in the 'audit_log_events' dropdown list.

  6. Para os parâmetros audit_log_exclude_users e audit_log_include_users, especifique os usuários do MySQL a serem incluídos ou excluídos do registro em log fornecendo os nomes de usuário do MySQL deles.

    Screenshot showing the MySQL usernames to be included or excluded from logging.

  7. Selecione Salvar.

    Screenshot of the 'Save' button for saving changes in the parameter values.

Configurar a auditoria usando a CLI do Azure

Como alternativa, você pode habilitar e configurar a auditoria para o servidor flexível na CLI do Azure executando o seguinte comando:

# Enable audit logs
az mysql flexible-server parameter set \
--name audit_log_enabled \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON

Configurar os diagnósticos

Os logs de auditoria são integrados às configurações de diagnóstico do Azure Monitor para permitir que você redirecione seus logs para qualquer um destes três coletores de dados:

  • Um workspace do Log Analytics
  • Um hub de eventos
  • Uma conta de armazenamento

Observação

Você deve criar os coletores de dados antes de definir as configurações de diagnóstico. Você pode acessar os logs de auditoria nos coletores de dados que configurou. Pode levar até 10 minutos para que os logs sejam exibidos.

  1. No painel esquerdo, em Monitoramento, selecione Configurações de diagnóstico.

  2. No painel Configurações de diagnóstico, selecione Adicionar configuração de diagnóstico.

    Screenshot of the 'Add diagnostic setting' link on the 'Diagnostic settings' pane.

  3. Na caixa Nome, insira um nome para a configuração de diagnóstico.

    Screenshot of the 'Diagnostics settings' pane for selecting configuration options.

  4. Especifique para quais destinos (workspace do Log Analytics, um hub de eventos ou uma conta de armazenamento) enviar os logs de auditoria marcando as caixas de seleção correspondentes.

    Observação

    Neste tutorial, você enviará os logs de auditoria para um workspace do Log Analytics.

  5. Em Log, para o tipo de log, marque a caixa de seleção MySqlAuditLogs.

  6. Depois de configurar os coletores de dados para redirecionar os logs de auditoria, selecione Salvar.

Exibir logs de auditoria usando o Log Analytics

  1. No Log Analytics, no painel esquerdo, em Monitoramento, selecione Logs.

  2. Feche a janela Consultas.

    Screenshot of the Log Analytics 'Queries' pane.

  3. Na janela da consulta, você pode escrever a consulta a ser executada. Por exemplo, para encontrar um resumo dos eventos auditados em um servidor específico, utilizamos a seguinte consulta:

    AzureDiagnostics
        |where Category =='MySqlAuditLogs' 
        |project TimeGenerated, Resource, event_class_s, event_subclass_s, event_time_t, user_s ,ip_s , sql_text_s 
        |summarize count() by event_class_s,event_subclass_s 
        |order by event_class_s 
    

    Screenshot of an example Log Analytics query seeking to find a summary of audited events on a particular server.

Exibir logs de auditoria usando pastas de trabalho

O modelo de pasta de trabalho usado para auditoria exige a criação de configurações de diagnóstico para enviar os logs da plataforma.

  1. No Azure Monitor, no painel esquerdo, selecione Log de atividades e escolha Configurações de diagnóstico.

    Screenshot showing the 'Diagnostics settings' tab on the Azure Monitor 'Activity log' pane.

  2. No painel Configuração de diagnóstico, você pode adicionar uma configuração ou editar uma existente. Cada configuração pode ter apenas um destino de cada tipo.

    Screenshot of the Azure Monitor 'Diagnostic setting' pane for selecting log destinations.

    Observação

    Você pode acessar os logs de consultas lentas nos coletores de dados (workspace do Log Analytics, conta de armazenamento ou hub de eventos) que já configurou. Pode levar até 10 minutos para que os logs sejam exibidos.

  3. No portal do Azure, no painel esquerdo, em Monitorando sua instância de servidor flexível do Banco de Dados do Azure para MySQL, selecione Pastas de Trabalho.

  4. Selecione a pasta de trabalho Auditoria.

    Screenshot showing all workbooks in the workbook gallery.

Na pasta de trabalho, você pode exibir as seguintes visualizações:

  • Ações Administrativas no serviço
  • Resumo da Auditoria
  • Resumo de Eventos de Conexão de Auditoria
  • Eventos de Conexão de Auditoria
  • Resumo de Acesso à Tabela
  • Erros Identificados

Screenshot of workbook template 'Administrative Actions on the service'.

Screenshot of workbook template 'Audit Connection Events'.

Observação

  • Você também poderá editar esses modelos e personalizá-los de acordo com suas necessidades. Para saber mais, confira a seção “Modo de edição” das Pastas de trabalho do Azure.
  • Para uma exibição rápida, você também pode fixar as pastas de trabalho ou a consulta do Log Analytics em seu painel. Para obter informações, confira Criar um painel excluído no portal do Azure.

A exibição Ações Administrativas no serviço fornece detalhes sobre as atividades executadas no serviço. Ela ajuda a determinar o quê, quem e quando para as operações de gravação (PUT, POST e DELETE) executadas nos recursos na sua assinatura.

Você pode usar outras visualizações para entender os detalhes da atividade do banco de dados. A segurança do banco de dados tem quatro partes:

  • Segurança do servidor: responsável por impedir que pessoas não autorizadas acessem o banco de dados.
  • Conexão de banco de dados: o administrador deve verificar se alguma atualização de banco de dados foi executada por pessoas autorizadas.
  • Controle de acesso de tabela: mostra as chaves de acesso dos usuários autorizados e quais tabelas no banco de dados cada um está autorizado a manipular.
  • Restrição de acesso ao banco de dados: é especialmente importante para aqueles que carregaram um banco de dados na Internet e ajuda a impedir que fontes externas tenham acesso ao banco de dados.

Próximas etapas