我们的数据库中有审计表。该表的记录是使用触发器完成的。
目前,没有什么可以阻止用户登录数据库服务器、从管理工作室打开表和更改审计表中的数据。
有哪些可能的机制可以防止(或至少检测)审计数据篡改案例?
我正在考虑在审计表中添加一列,该列应包含一些基于该行中输入的值计算的哈希值。但是,由于审计是使用触发器完成的,恶意用户可以打开任何触发器并查看计算此哈希的逻辑。
编辑:
我不够清楚。应用程序用户无权访问数据库。我指的是像 DB admin 这样的用户,对数据库具有适当的权限。尽管如此,如果这个数据库管理员登录并有权修改审计表,我希望至少有一些机制来检测这种篡改。