Questão nº 51
Questão de Tecnologia da Informação · FCC TRT15 2024 (nº 51)
Um Tribunal Regional do Trabalho está desenvolvendo um sistema de gestão de processos judiciais que inclui um módulo de auditoria para rastrear mudanças nos registros dos processos. É essencial que qualquer alteração nos dados dos processos judiciais (por exemplo, petições, decisões, movimentações) seja auditada para garantir a integridade e a transparência. Um Analista de TI decide utilizar Hibernate Envers para atender aos requisitos desse módulo de auditoria e, para isso, deve
- Aconfigurar Hibernate Envers para criar uma tabela de auditoria que registre todas as alterações em entidades anotadas, incluindo quem fez a alteração e quando foi feita. (alternativa correta)
- Busar Hibernate Envers para criar automaticamente backups diários de todas as tabelas do banco de dados.
- Cutilizar Hibernate Envers para migrar dados auditáveis entre diferentes esquemas de banco de dados de forma transparente.
- Dimplementar Hibernate Envers para validar os dados de auditoria dos processos judiciais antes de serem inseridos no banco de dados.
- Econfigurar Hibernate Envers para enviar notificações à auditoria, por e-mail, a cada alteração de dados no banco de dados.
Resposta comentada
Gabarito Alternativa A
Hibernate Envers é uma ferramenta que se integra ao Hibernate para registrar automaticamente todas as modificações (criações, atualizações e exclusões) feitas nas entidades do seu banco de dados, criando um histórico detalhado dessas alterações.
(A) Correta: Hibernate Envers é projetado especificamente para criar e gerenciar tabelas de auditoria (também chamadas de tabelas de revisão) que registram o estado de uma entidade a cada alteração, incluindo metadados como o ID da revisão (que pode ser associado ao usuário e ao timestamp da alteração).
(B) Incorreta: Hibernate Envers não tem a função de criar backups diários de todas as tabelas do banco de dados. Sua finalidade é o rastreamento de alterações (auditoria), não a recuperação de desastres através de cópias completas do banco de dados. A armadilha da banca aqui é confundir "preservação de dados" com "auditoria": enquanto ambos lidam com dados históricos, o objetivo e o mecanismo são distintos.
(C) Incorreta: A migração de dados entre diferentes esquemas de banco de dados é uma funcionalidade de ferramentas de migração ou scripts específicos, e não um recurso do Hibernate Envers, que atua no rastreamento de alterações dentro de um mesmo ambiente de persistência.
(D) Incorreta: A validação de dados (verificar se os dados estão corretos antes de serem salvos) é uma responsabilidade de frameworks de validação (como Bean Validation) ou da lógica de negócio da aplicação, não do Hibernate Envers. O Envers registra as alterações após a validação e persistência.
(E) Incorreta: Enviar notificações por e-mail a cada alteração de dados não é uma funcionalidade nativa ou principal do Hibernate Envers. O Envers foca em registrar as alterações; a notificação é uma funcionalidade da aplicação que poderia ser construída com base nos dados de auditoria, mas não é provida pelo Envers diretamente.
Fonte: FCC TRT15 2024 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.