AUDITING – Conhecendo, Instalando e Administrando
No universo dos bancos de dados, a auditoria desempenha um papel crucial na manutenção da segurança e conformidade. Entender como configurar e gerenciar a auditoria é fundamental para garantir a integridade dos dados e a conformidade com as políticas internas e regulatórias. Este artigo guio o leitor pelos aspectos essenciais da auditoria no Oracle Database, abordando desde a configuração inicial até a administração avançada. Exploraremos como habilitar a auditoria, configurar parâmetros, e realizar ajustes para garantir que a auditoria atenda às necessidades específicas do ambiente.
Conhecendo a Auditoria
A auditoria é uma ferramenta poderosa que permite registrar e monitorar atividades no banco de dados. No Oracle, para configurar a auditoria, é necessário estar no PDB (Pluggable Database) e não no CDB (Container Database). As auditorias configuradas no CDB não afetarão os PDBs individuais. Para começar, podemos consultar as tabelas que armazenam as informações de auditoria:
SELECT table_name, tablespace_name
FROM dba_tables
WHERE table_name IN ('AUD$', 'FGA_LOG$')
ORDER BY table_name;
Este comando exibe as tablespaces onde os registros de auditoria são armazenados. É uma prática recomendada designar uma tablespace diferente da SYSTEM ou SYSAUX para os registros de auditoria. Isso é importante porque a SYSTEM e SYSAUX concentram atividades críticas do banco de dados, e em um cenário de desastre, os dados de auditoria poderiam ocupar espaço necessário para a recuperação dos datafiles dessas tablespaces.
Para alterar a tablespace onde os registros de auditoria são armazenados, usamos os seguintes comandos:
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD,
audit_trail_location_value => 'TBS_AUDITING'
);
END;
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_FGA_STD,
audit_trail_location_value => 'TBS_AUDITING'
);
END;
SELECT table_name, tablespace_name
FROM dba_tables
WHERE table_name IN ('AUD$', 'FGA_LOG$')
ORDER BY table_name;
Esses comandos garantem que a tablespace TBS_AUDITING será o novo lar sua localização padrão para os relatórios de auditoria, ajudando a evitar problemas de performance e espaço nas tablespaces críticas.
Para gerenciar a auditoria, é essencial compreender os parâmetros relevantes. Usando o comando:
SHOW PARAMETER AUDIT;
Podemos visualizar os parâmetros importantes:
- audit_file_dest: Diretório onde os arquivos de auditoria são armazenados.
- audit_sys_operations: Ativa a auditoria das operações do usuário SYS.
- audit_trail: Define onde a auditoria é registrada (no banco de dados, por exemplo).
- unified_audit_common_systemlog: Configura a auditoria unificada para o syslog.
Para um gerenciamento eficaz dos arquivos de auditoria, é fundamental ajustar os parâmetros que controlam seu tamanho e a idade máxima. Estes parâmetros ajudam a garantir que a auditoria não consuma espaço excessivo e que os arquivos sejam rotacionados de maneira adequada. Para visualizar essas configurações, podemos usar o seguinte comando:
SELECT * FROM dba_audit_mgmt_config_params
WHERE parameter_name LIKE 'AUDIT FILE MAX%';
Explicação dos Parâmetros:
- AUDIT FILE MAX SIZE: Define o tamanho máximo (em megabytes) de cada arquivo de auditoria. No exemplo mostrado, está configurado para 10.000 MB (ou 10 GB) para três tipos de auditoria:
- OS AUDIT TRAIL: Auditoria em arquivos do sistema operacional.
- XML AUDIT TRAIL: Auditoria em arquivos XML.
- UNIFIED AUDIT TRAIL: Auditoria unificada.
- AUDIT FILE MAX AGE: Define a idade máxima (em dias) dos arquivos de auditoria antes de serem rotacionados. Está configurado para 5 dias para os seguintes tipos de auditoria:
- OS AUDIT TRAIL: Auditoria em arquivos do sistema operacional.
- XML AUDIT TRAIL: Auditoria em arquivos XML.
- UNIFIED AUDIT TRAIL: Auditoria unificada.
Essas configurações desempenham um papel crucial na gestão dos arquivos de auditoria. Ajustá-las adequadamente pode ajudar a:
- Gerenciar o Espaço: Evita que arquivos de auditoria ocupem espaço excessivo e garante que o armazenamento seja utilizado de forma eficiente.
- Rotacionar Arquivos: Facilita a rotação dos arquivos para evitar o acúmulo e a potencial sobrecarga de armazenamento.
- Desempenho e Manutenção: Mantém o sistema de auditoria ágil e reduz o impacto na performance do banco de dados.
- Conformidade e Segurança: Assegura que os dados de auditoria estejam acessíveis e gerenciáveis, atendendo aos requisitos de conformidade.
Esses parâmetros são editáveis e devem ser ajustados de acordo com as necessidades do ambiente específico. Na sequência, veremos como editar esses parâmetros para otimizar a configuração da auditoria.
Um ajuste importante para garantir que os arquivos de auditoria não se tornem um problema é configurar corretamente o tamanho máximo desses arquivos. No exemplo abaixo, vamos aumentar o parâmetro AUDIT FILE MAX SIZE de 10 GB para 15 GB, utilizando o seguinte comando:
BEGIN
DBMS_AUDIT_MGMT.set_audit_trail_property(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS,
audit_trail_property => DBMS_AUDIT_MGMT.OS_FILE_MAX_SIZE,
audit_trail_property_value => 15000);
END;
/
Este comando configura o tamanho máximo dos arquivos de auditoria no sistema operacional para 15.000 MB (ou 15 GB). Aumentar esse parâmetro pode ser útil para ambientes que geram um volume elevado de dados de auditoria, garantindo que os arquivos não sejam rotacionados com muita frequência e que o sistema não enfrente problemas relacionados ao espaço em disco.
Após a execução deste comando, podemos verificar a nova configuração usando a consulta:
Esta consulta retorna os parâmetros configurados para o tamanho e a idade máxima dos arquivos de auditoria, permitindo confirmar que nossas alterações foram aplicadas corretamente.
A configuração e administração da auditoria são passos essenciais para garantir a segurança e a conformidade em ambientes Oracle. Compreender os parâmetros e práticas recomendadas, desde a seleção da tablespace até a configuração de tamanho e retenção de arquivos, permite otimizar a auditoria para atender às necessidades específicas de qualquer organização. Ao seguir as diretrizes apresentadas, é possível manter um ambiente de banco de dados seguro e eficiente, pronto para enfrentar desafios e cumprir requisitos regulatórios.
Em resumo, a auditoria bem gerenciada não só protege os dados, mas também fortalece a confiança nas operações e na integridade do banco de dados.