Impedir a violação da tabela de auditoria

Temos tabela de auditoria em nosso banco de dados. Os registros nesta tabela são feitos usando gatilhos.

Atualmente, não há nada que impeça o usuário de efetuar logon no servidor de banco de dados, abrir a tabela no studio de gerenciamento e alterar dados na tabela de auditoria.

Quais são os mecanismos possíveis que podem impedir (ou pelo menos detectar) casos de violação de dados de auditoria?

Estou pensando em adicionar uma coluna na tabela de auditoria que deve conter algum hash calculado com base nos valores inseridos nessa linha. No entanto, como a auditoria é feita usando o gatilho, o usuário mal-intencionado pode abrir qualquer gatilho e ver a lógica pela qual esse hash é calculado.

EDITAR:

Eu não estava claro o suficiente. O usuário do aplicativo não tem acesso ao banco de dados. Eu estava me referindo a algum usuário como DB admin, com direitos apropriados no banco de dados. Ainda assim, se esse administrador de banco de dados fizer logon e tiver direitos de moderar a tabela de auditoria, eu gostaria de ter algum mecanismo para detectar essa violação pelo menos.

questionAnswers(5)

yourAnswerToTheQuestion