Para auditorias de conformidade de segurança, análise de desempenho e solução de problemas, ative o SQL Explorer and Audit. Esse recurso registra automaticamente todas as instruções SQL executadas no kernel do banco de dados e informações relacionadas, como conta executora, endereço IP e detalhes da execução. O impacto no desempenho da instância é insignificante, e o recurso fornece dados confiáveis para consultar registros históricos de SQL e realizar análises e auditorias subsequentes.
Pré-requisitos
-
Você já adquiriu o Database Autonomy Service (DAS) Enterprise Edition.
O uso do recurso SQL Explorer and Audit só é possível após a ativação do Database Autonomy Service (DAS) Enterprise Edition. No console, você pode ativar apenas a edição mais alta do DAS Enterprise Edition compatível com a região atual. As diferentes edições do DAS Enterprise Edition possuem regiões suportadas distintas.
-
Um usuário RAM deve ter a permissão AliyunRDSReadOnlyWithSQLLogArchiveAccess para utilizar o recurso Audit. Para obter mais informações sobre como conceder permissões a um usuário RAM, consulte Usar o RAM para controlar permissões no ApsaraDB RDS.
Como alternativa, utilize uma política personalizada para conceder ao usuário RAM permissão de uso do recurso Search (audit), incluindo a exportação de dados. Para mais detalhes, veja Usar uma política personalizada para autorizar um usuário RAM a usar a função Search (incluindo Export) do SQL Explorer and Audit.
O recurso SQL Explorer and Audit registra todas as operações de Data Query Language (DQL), Data Manipulation Language (DML) e Data Definition Language (DDL). O kernel do banco de dados gera essas informações, que consomem recursos mínimos de CPU.
Visão geral do recurso
O SQL Explorer and Audit oferece funcionalidades como Search (audit), SQL Explorer, auditoria de segurança, reprodução de tráfego e teste de estresse, além de análise de SQL.
Search (audit): Consulte e exporte o histórico de execução de instruções SQL e informações associadas, como banco de dados, status e tempo de execução.
SQL Explorer: Diagnostique a integridade das instruções SQL, solucione problemas de desempenho e analise o tráfego de negócios em um intervalo de tempo específico.
Auditoria de segurança (legada): Identifica automaticamente riscos como instruções SQL de alto risco, injeção de SQL e novas fontes de acesso.
Reprodução de tráfego e teste de estresse: Disponibiliza recursos de reprodução de tráfego e testes de estresse para ajudar a verificar se as especificações da sua instância precisam ser ampliadas para lidar com picos de tráfego de negócios.
Análise de SQL: Examina instruções SQL durante um período determinado para identificar anomalias e localizar problemas de desempenho.
O SQL Explorer and Audit é frequentemente utilizado nos seguintes cenários:
Setores com requisitos rigorosos de segurança de dados, como finanças, segurança pública, mercado de capitais, governo e seguros.
Situações que exigem investigação detalhada de operações de banco de dados, incluindo solução de problemas, análise de desempenho de instruções SQL e investigação de sessões anômalas.
Casos de perda ou corrupção de dados, em que os registros SQL do SQL Explorer auxiliam na análise de incidentes e na recuperação de dados.
Regiões suportadas
China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapura, Japão (Tóquio), Malásia (Kuala Lumpur), Indonésia (Jacarta), EUA (Vale do Silício), Reino Unido (Londres), EUA (Virgínia) e Alemanha (Frankfurt)
Detalhes de faturamento
-
Se você adquiriu uma instância e ativou o recurso SQL Explorer antes da atualização para SQL Explorer and Audit: O RDS cobra a taxa do recurso por hora. Os preços variam conforme a região da instância.
USD 0,0015 por GB/hora: China (Hong Kong), EUA (Vale do Silício) e EUA (Virgínia).
USD 0,0018 por GB/hora: Singapura, Japão (Tóquio), Alemanha (Frankfurt), Emirados Árabes Unidos (Dubai), Malásia (Kuala Lumpur), Indonésia (Jacarta) e Reino Unido (Londres).
USD 0,0012 por GB/hora: China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou) e China (Chengdu).
NotaClique em One-click Upgrade na caixa de diálogo de atualização exibida na aba SQL Explorer para atualizar para o SQL Explorer and Audit. Após a atualização, o DAS passa a cobrar a taxa.
-
Se você ativar o recurso SQL Explorer and Audit após a atualização: O DAS cobra a taxa. O uso do SQL Explorer and Audit só é permitido após a ativação do Database Autonomy Service (DAS) Enterprise Edition. As regiões suportadas e os métodos de faturamento variam conforme a edição. Para mais informações, consulte Bancos de dados e regiões suportados por cada DAS Enterprise Edition e Faturamento do produto de cada DAS Enterprise Edition.
NotaNo console, você pode ativar apenas a versão mais recente do DAS Enterprise Edition suportada na região atual.
Observações de uso
-
Consulta online:
Intervalo de tempo: Uma única consulta online pode abranger no máximo 24 horas. É possível consultar dados de qualquer período de 24 horas dentro do prazo de retenção. Consultas que atingem a duração máxima podem expirar. Caso precise consultar registros SQL em um intervalo maior, utilize o Simple Log Service (SLS) para acessar os logs de auditoria. Para mais detalhes, veja Coletar logs de auditoria de uma instância ApsaraDB RDS for MySQL.
Método de consulta: Consultas online aceitam buscas combinadas, mas não suportam buscas aproximadas. As palavras-chave devem ter pelo menos quatro caracteres.
-
SQL Explorer and Audit:
Comprimento máximo da instrução SQL: O tamanho máximo registrável de uma instrução SQL é de
8192bytes. Esse limite também depende do parâmetroloose_rds_audit_max_sql_size(para MySQL 5.6/5.7) ou do parâmetroloose_rds_audit_log_event_buffer_size(para MySQL 8.0). O limite efetivo corresponde ao menor desses valores. Devido a um prefixo adicionado durante a coleta e o processamento de dados, o comprimento real registrado da instrução SQL é ligeiramente inferior a 8.192 bytes ou ao valor definido no parâmetro.Consulta de registros de auditoria: Você pode consultar registros de instruções SQL por ID de thread e ID de transação. Para consultar por ID de transação, defina o parâmetro
loose_rds_audit_log_versioncomoMYSQL_V3. Versões secundárias específicas do mecanismo são necessárias: a versão secundária do MySQL 8.0 deve ser 20210930 ou posterior, e a do MySQL 5.7 deve ser 20210630 ou posterior. Para mais informações, consulte Parâmetros de uma instância ApsaraDB RDS for MySQL 8.0 e Atualizar a versão secundária do mecanismo de uma instância ApsaraDB RDS for MySQL.SQL Explorer (Edição de Teste): Se estiver usando a edição de teste do SQL Explorer, não será possível chamar as operações de API DescribeSQLLogRecords e DescribeSQLLogFiles para consultar logs de auditoria.
Tempo de espera de bloqueio: Os logs de auditoria incluem o tempo de espera de bloqueio, enquanto o log de consultas lentas não contém essa informação.
Quando uma aplicação utiliza o método prepare, duas instruções aparecem no SQL Explorer: uma com ponto de interrogação e outra com um valor específico.
Ao conectar-se a uma instância usando o endpoint de um proxy de banco de dados com o pool de conexões no nível de transação habilitado, as conexões podem ser reutilizadas. Nesse cenário, o endereço IP e a porta exibidos pelo comando
show processlistou no SQL Explorer podem diferir do endereço IP e da porta reais do cliente.Quando uma instrução SQL é executada em uma instância ApsaraDB RDS for MySQL vinculada a uma instância PolarDB-X 1.0, vários logs são gerados no SQL Explorer and Audit da instância ApsaraDB RDS for MySQL devido ao sharding horizontal.
-
Integridade dos logs: Nos seguintes cenários extremos, alguns logs do SQL Explorer and Audit podem ser perdidos:
A instância está sob alta carga e apresenta gargalos de desempenho.
A instância recebe um volume elevado de solicitações SQL.
O serviço de coleta de logs de auditoria não está funcionando corretamente.
Observações de uso
-
Uma única consulta online pode abranger no máximo 24 horas. Como o SQL Explorer registra todas as atividades do banco de dados, consultas que atingem a duração máxima podem não retornar resultados ou expirar.
NotaVocê pode consultar dados de qualquer período de 24 horas dentro do prazo de retenção.
Caso precise consultar registros SQL em um intervalo de tempo maior, utilize o Simple Log Service (SLS) para acessar os logs de auditoria. Para mais detalhes, veja Coletar logs de auditoria de uma instância ApsaraDB RDS for MySQL.
Consultas online suportam buscas combinadas. Por exemplo, insira test1 test2 na caixa de pesquisa de palavras-chave para consultar logs SQL que contenham test1 ou test2.
Buscas aproximadas não são suportadas em consultas online.
Cada palavra-chave em uma consulta online deve ter pelo menos quatro caracteres.
-
Você pode consultar registros de instruções SQL por ID de thread e ID de transação.
NotaAntes de consultar registros por ID de transação, defina o parâmetro loose_rds_audit_log_version como MYSQL_V3. Para mais informações, consulte Parâmetros de uma instância ApsaraDB RDS for MySQL 8.0.
Para consultar registros por ID de transação, a versão secundária do mecanismo MySQL 8.0 deve ser 20210930 ou posterior, e a versão secundária do MySQL 5.7 deve ser 20210630 ou posterior.
-
O comprimento máximo das instruções SQL registradas pelo SQL Explorer and Audit é de 8.192 bytes, controlado pelo parâmetro loose_rds_audit_max_sql_size ou loose_rds_audit_log_event_buffer_size. A faixa de valores para esses parâmetros é
[0,32768]bytes:Se o valor do parâmetro for igual ou inferior a 8.192 bytes, o comprimento máximo da instrução SQL corresponderá ao valor especificado. A parte da instrução que exceder o limite não será registrada. Como um prefixo é adicionado durante a coleta e o processamento, o comprimento real registrado é ligeiramente menor que o valor do parâmetro.
Se o valor do parâmetro for superior a 8.192 bytes, o comprimento máximo da instrução SQL será de 8.192 bytes. A parte excedente não será registrada. Devido ao prefixo adicionado na coleta e processamento, o comprimento real gravado é um pouco inferior a 8.192 bytes.
NotaPara instâncias ApsaraDB RDS for MySQL 5.6 e 5.7, o parâmetro loose_rds_audit_max_sql_size controla o comprimento do registro.
Para instâncias ApsaraDB RDS for MySQL 8.0, o parâmetro loose_rds_audit_log_event_buffer_size controla o comprimento do registro.
Se estiver utilizando a edição de teste do SQL Explorer, não será possível chamar as operações de API DescribeSQLLogRecords e DescribeSQLLogFiles para consultar logs de auditoria.
Os logs de auditoria contêm o tempo de espera de bloqueio, ao contrário do log de consultas lentas.
Ao conectar-se a uma instância usando o endpoint de um proxy de banco de dados com o pool de conexões no nível de transação habilitado, as conexões podem ser reutilizadas. Nesse caso, o endereço IP e a porta exibidos pelo comando
show processlistou no SQL Explorer podem diferir do endereço IP e da porta reais do cliente.Quando uma aplicação usa o método prepare, duas instruções aparecem no SQL Explorer: uma com ponto de interrogação e outra com um valor específico.
Quando uma instrução SQL é executada em uma instância ApsaraDB RDS for MySQL anexada a uma instância PolarDB-X 1.0, múltiplos logs são gerados no SQL Explorer and Audit da instância ApsaraDB RDS for MySQL devido ao sharding horizontal.
Ativar o SQL Explorer and Audit
Se você ativar o recurso de coleta de logs de auditoria para sua instância ApsaraDB RDS for MySQL no CloudLens for RDS do Simple Log Service (SLS), o recurso SQL Explorer and Audit será ativado automaticamente para a instância.
Se você ainda não ativou o recurso SQL Explorer and Audit, é possível visualizar o log binário. O log binário permite consultar apenas instruções SQL de adição, exclusão e modificação de dados geradas dentro do período de retenção de backup. Não é possível visualizar o endereço IP de origem ou informações da conta.
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, escolha .
Clique em Enable DAS Enterprise Edition V3.
Selecione os recursos que deseja ativar e clique em Activate.
Modificar a duração de armazenamento de dados
Ao reduzir o período de retenção de dados do SQL Explorer and Audit, o DAS exclui imediatamente todos os logs de auditoria SQL anteriores ao novo período. Antes de reduzir o período de retenção, exporte e salve seus logs.
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, escolha .
Clique em Service Settings.
Na página Service Settings, modifique a duração de armazenamento de logs para Audit Scenarios e clique em Submit.
Desativar o SQL Explorer and Audit
Após desativar o SQL Explorer and Audit, o DAS limpa todos os logs existentes. Exporte e salve os logs antes de desativar o recurso. Ao reativá-lo, os logs serão registrados a partir do momento da reativação.
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, escolha .
Na aba Audit, na seção Logs, clique em Export.
-
Na caixa de diálogo exibida, selecione os campos e o intervalo de tempo para exportação e clique em OK.
NotaÉ possível exportar até 10 milhões de entradas de dados dentro de um período de sete dias em uma única tarefa.
Defina o Export Time Range para exportar registros SQL de um período mais longo.
Após a conclusão da exportação, baixe o arquivo exportado e armazene-o com segurança.
-
Clique em Service Settings para desativar o SQL Explorer and Audit.
Se tiver ativado o DAS Enterprise Edition V3, desmarque as caixas de seleção de todos os recursos do SQL Explorer and Audit e clique em Submit.
NotaCerca de uma hora após a desativação do recurso SQL Explorer and Audit, o sistema libera o espaço de armazenamento utilizado pelos dados.
Migrar dados entre Enterprise Editions
A operação de migração não pode ser interrompida ou revertida. Leia atentamente as instruções de migração antes de prosseguir.
Se sua instância de banco de dados suportar o Enterprise Edition V3, você poderá migrar dados do Database Autonomy Service (DAS) Enterprise Edition V1 ou V2 para o Enterprise Edition V3 para aproveitar preços mais vantajosos. Para mais informações, consulte Como migrar dados entre diferentes versões do DAS Enterprise Edition?
Em comparação com o Enterprise Edition V1, o Enterprise Edition V2 utiliza uma arquitetura de armazenamento subjacente diferente que alcança custo-benefício por meio do armazenamento híbrido de dados quentes e frios. O Enterprise Edition V3 baseia-se nessa arquitetura de armazenamento híbrido e oferece faturamento mais flexível, detalhando as cobranças conforme os recursos utilizados.