💡 Volta e meia a ferramenta de Auditoria do ERP Protheus torna-se relevante aqui na empresa onde eu trabalho: seja para ajudar a esclarecer dúvidas de usuários (sobre quem fez o que no sistema) ou para ajudar na análise de problemas que às vezes parecem bizarros diante da falta de evidências e dificuldade para reproduzí-los em bases de teste (acredite, isto é mais comum do que se imagina, ainda mais considerando-se ecosistemas tão complexos e com tantas variáveis como em um ERP do tamanho do Protheus, aliado a um cenário com inúmeras integrações com sistemas legados).
Neste caso, vou explicar brevemente o que é o Embedded Audit Trail e como configurá-lo, mas não vou me aprofundar muito nisso na configuração do mesmo, visto que a documentação da Totvs cobre com eficiência os pormenores de como configurar a ferramenta. Também vou dar algumas dicas de como consultar as tabelas de auditoria e falar um pouco sobre a minha experiência com a performance da ferramenta.
Embedded Audit Trail (EAT) no Protheus: O Guia Completo para Auditoria Forense e Compliance
O que é Embedded Audit Trail (EAT) e seu Propósito Estratégico
O Embedded Audit Trail (EAT) é a solução nativa de auditoria de banco de dados do ERP Protheus. Ele atua como um "detetive digital" interno, registrando de forma detalhada as atividades dos usuários, como Inclusão, Alteração e Exclusão de dados.
O EAT foi projetado para manter a Alta Performance do sistema enquanto garante uma rastreabilidade rigorosa.
O registro de logs do EAT é crucial por:
Segurança e Rastreabilidade: Ele armazena tanto o conteúdo anterior (
TTAT_COLD) quanto o conteúdo posterior (TTAT_CNEW) à edição. Isso fornece a prova exata de como os dados foram modificados.Conformidade: Ajuda a atender a diversos requisitos regulatórios, sendo crucial para a adequação à legislação como a LGPD (Lei Geral de Proteção de Dados).
Auditoria Forense: Permite rastrear operações que tentam contornar rotinas padrões, incluindo alterações realizadas por ferramentas como o PSDU ou comandos diretos de
UPDATEno SGBD, desde que executados pelo usuário técnico da aplicação.
Arquitetura Distribuída: O Modelo de Logs (Tabelas Irmãs)
Para lidar com o alto volume de dados de auditoria sem impactar o desempenho, o EAT adota um modelo inteligente de tabelas irmãs de auditoria.
A regra arquitetural é que cada tabela de aplicação auditada no Protheus terá uma tabela de log correspondente. A nomenclatura segue o padrão: [Nome da Tabela]_TTAT_LOG.
Exemplos de Nomenclatura de Logs:
Tabela de Aplicação:
SA1010(Cadastro de Clientes)Tabela de Auditoria:
SA1010_TTAT_LOGTabela de Aplicação:
SB1010(Cadastro de Produtos)Tabela de Auditoria:
SB1010_TTAT_LOG
A análise detalhada é feita por meio de queries SQL personalizadas que acessam diretamente a tabela de log específica.
Implementação e Configuração Granular (SIGACFG)
A ativação e parametrização do EAT são gerenciadas através da rotina Aplicador, dentro do Configurador (SIGACFG), seguindo uma estrutura de Exceção e Regra em três níveis:
Nível Grupo de Empresas: Define a regra padrão para todas as tabelas e campos ou, inversamente, bloqueia a auditoria para definição seletiva.
Nível Tabela: Liga ou desliga a auditoria para a tabela. O escopo LIGAÇÃO é crucial, pois permite que a regra de auditoria seja definida apenas no Nível Campo, ignorando a regra da Tabela.
Nível Campos: O nível mais granular, onde se define a auditoria para um campo específico.
Dicas de Configuração:
Se deseja auditar apenas a tabela
SA1inteira, defina o Grupo de Empresas como Exceção e a TabelaSA1com Escopo: Regra (Operação: 7).Se o objetivo é auditar apenas dois campos específicos (
C5_VEND1eC5_COMIS1daSC5), defina o Grupo de Empresas como Exceção, a TabelaSC5com Escopo: Ligação, e os campos com Escopo: Regra.
Ao confirmar, o sistema cria os gatilhos (triggers) no banco de dados, ativando a auditoria.
Otimização de Performance e Políticas Críticas
Otimização de Performance
A melhor estratégia para o EAT é a minimização e granularidade do escopo.
Inatividade Total: Um escopo totalmente em branco (sem regras definidas) significa que o EAT está totalmente inativo, garantindo a máxima performance.
Foque no Valor: Audite apenas os campos que possuem alto valor forense ou que são sensíveis (financeiros, LGPD, cadastros mestres).
Cautela na Inclusão: Evite auditar todos os campos para a operação de Inclusão em tabelas de grande volume, pois o registro completo pode impactar a performance de escrita de logs.
Controle de Volume: Utilize o recurso de Purge (Limpeza de Logs) para gerenciar o Tempo de histórico mantido (3, 6, 9 ou 12 meses), controlando o volume das tabelas de log.
Política Operacional Crítica: Desativação Obrigatória
É uma regra de ouro: O Embedded Audit Trail deve ser obrigatoriamente desabilitado antes de rodar o UPDDistr ou qualquer processo de Atualização de Release.
Os triggers criados pelo EAT podem causar inconsistências ou travar a execução do DDL (ALTER TABLE) durante o UPDDistr.
Procedimento de Desativação Rápida:
Realizar backup da tabela de configuração do EAT (
XA4).No Aplicador (Configurador), mude o(s) Grupo(s) para Escopo = Exceção e Operação = Não se Aplica.
Na Área Tabela, deletar todas as entradas (pressionando DEL).
Clicar em Confirmar. Isso garante a remoção dos triggers do SGBD.
Dicionário de Dados: Análise Forense da Tabela *_TTAT_LOG
A tabela de log (X_TTAT_LOG) é a ferramenta principal na auditoria forense. O campo TTAT_IDENT é a chave de agrupamento que permite reconstruir todos os campos alterados em uma única ação do usuário.
Campos Essenciais:
TTAT_COLD: O valor do campo antes da transação (nulo para Inclusões).TTAT_CNEW: O valor do campo depois da transação (nulo para Exclusões).TTAT_OPERATI: A operação:I(Inclusão),U(Alteração/Update),XouD(Exclusão/Delete).TTAT_PROGRAM: A rotina (Ex:MATA010,PSDU) que originou o log.TTAT_USERID: Código de login do usuário Protheus que realizou a operação.TTAT_UDB: O login técnico do Banco de Dados (SQL User) que executou o comando. Crucial para rastrear acessos diretos no SGBD.TTAT_DTIME: O timestamp exato do registro.TTAT_RECNO: O Recno do Protheus que identifica o registro na tabela original.
Passo a Passo simples para configurar o Embedded Audit Trail
Como eu mencionei inicialmente, não vou me aprofundar na configuração do Audit Trail, visto que a documentação padrão da Totvs é bastante completa em relação a essa ferramenta. Eu sei, nem sempre é assim, mas neste caso o manual está completo e bastante detalhado.
Porém, neste post auspicioso, permita que em lugar de um manual técnico corriqueiro, eu sugira um passo a passo simples e desmistificado em Três Passos e uma Dica de Ouro:
Primeiro Passo: Vá até o Configurador, clique em Ambiente, procure Embedded Audit Trail e após clicar nessa opção.
Segundo Passo: Agora escolha a rotina Aplicador, conforme a imagem abaixo:
Terceiro Passo: Então, na tela abaixo, você deve escolher cada etapa da construção da regra, de forma gradual: 1 -> Escolha a empresa; 2 -> Escolha se é regra ou exceção, etc...
Dica: Por fim, escolha por quanto tempo quer manter os dados da auditoria.
Técnicas de Consulta Avançada via SQL
Para detalhamento e performance, a consulta direta às tabelas *_TTAT_LOG via SQL é a opção mais poderosa. Lembre-se de sempre referenciar o nome exato da tabela de log (Ex: SA1010_TTAT_LOG).
1. Rastreamento Geral de Atividades (Exemplo: SCR010)
-- Query 1: Rastreamento Geral da Tabela SCR010 (Alçadas de Aprovação)SELECT TTAT_DTIME AS "Timestamp DB", TTAT_OPERATI AS "Operacao DB", TTAT_USERID AS "ID Usuário", TTAT_USER AS "Nome Usuário", TTAT_PROGRAM AS "Rotina Fonte", TTAT_IDENT AS "ID Transação", TTAT_RECNO AS "RECNO do Registro", TTAT_FIELD AS "Campo Alterado", TTAT_COLD AS "Valor Antigo", TTAT_CNEW AS "Valor Novo" FROM SCR010_TTAT_LOG WHERE TTAT_OPERATI IN ('I', 'U', 'X', 'D') AND TTAT_DTIME BETWEEN '01/01/25 00:00:00' AND '31/12/25 00:00:00,000000' ORDER BY TTAT_DTIME ASC, TTAT_IDENT ASC;
2. Rastreamento de Alterações em Campos de Alto Risco
Esta consulta foca em um campo sensível, como o Limite de Crédito (A1_LC), buscando apenas alterações (U) onde houve uma mudança real de valor.
-- Query 2: Rastreando quem modificou o Limite de Crédito (A1_LC)SELECT TTAT_DTIME AS "Timestamp DB", TTAT_USERID AS "Usuário", TTAT_HOSTNAM AS "Origem Host", TTAT_PROGRAM AS "Rotina", TTAT_RECNO AS "RECNO do Cliente", TTAT_COLD AS "Limite Antigo", TTAT_CNEW AS "Limite Novo" FROM SA1010_TTAT_LOG WHERE TTAT_FIELD = 'A1_LC' AND TTAT_OPERATI = 'U' AND TTAT_CNEW != TTAT_COLD AND TTAT_DTIME >= '01/01/2025' ORDER BY TTAT_DTIME DESC;
3. Auditoria de Operações Externas (PSDU ou Acessos Não-Padrão)
Utilizada para identificar ações que não vieram das rotinas padrão do Protheus, focando na origem do programa (TTAT_PROGRAM).
-- Query 3: Identificação de Alterações Fora de Rotinas Padrão em SB1010SELECT TTAT_DTIME, TTAT_USERID, TTAT_UDB AS "Usuário DB", TTAT_HOSTNAM, TTAT_PROGRAM AS "Origem do Programa", TTAT_FIELD, TTAT_CNEWFROM SB1010_TTAT_LOGWHERE -- Filtra por programas de acesso direto ou admin TTAT_PROGRAM IN ('psdu', 'sql_exec', 'admintol', 'dbaccess64.exe') -- E/OU: Filtra por alteração/exclusão AND TTAT_OPERATI IN ('U', 'X', 'D')ORDER BY TTAT_DTIME DESC;
Conclusão: O EAT como Escudo Digital da Sua Gestão
Chegamos ao fim da nossa jornada de desvendamento do Embedded Audit Trail (EAT) do Protheus, e fica evidente que essa ferramenta vai muito além de um simples registro de logs. O EAT é, na verdade, um sofisticado escudo digital para a gestão empresarial moderna, garantindo que as premissas de segurança, rastreabilidade e conformidade legal (LGPD) sejam atendidas sem comprometer a alta performance do ERP.
Dominar o EAT, desde a configuração granular no SIGACFG até a interpretação precisa dos campos como TTAT_COLD, TTAT_CNEW e o crucial TTAT_UDB, transforma o profissional de TI ou o auditor em um verdadeiro detetive de dados.
A maior força do EAT reside na facilidade e robustez da sua consulta via banco de dados. Ao acessar diretamente as tabelas *_TTAT_LOG, é possível aplicar o poder analítico do SQL para transformar dados brutos em inteligência forense acionável.
Lembrete Crucial de Segurança: Para preservar a integridade da sua trilha de auditoria, é imperativo que os usuários ou sistemas designados para a consulta dos logs do EAT possuam apenas direitos de leitura (SELECT) no banco de dados. Qualquer permissão de inclusão, alteração ou exclusão nas tabelas *_TTAT_LOG comprometeria irremediavelmente a segurança e a confiabilidade de toda a auditoria.
O Embedded Audit Trail é, portanto, a prova de que segurança e eficiência podem (e devem) caminhar lado a lado. Ao implementá-lo e consultá-lo de maneira estratégica, sua empresa garante a transparência e a accountability necessárias para navegar com confiança na era da informação.
Links Úteis:
1 - Manuais Oficiais sobre o EAT;






Comentários
Postar um comentário