DB Audit Trail的最佳实现是什么?

时间:2020-03-05 18:52:51  来源:igfitidea点击:

数据库审核跟踪将捕获用户的上次修改日期,修改日期和创建日期。

有几种可能的实现:

  • SQL Server触发器
  • 将UserModified,ModifiedDate,CreatedDate列添加到数据库,并在存储过程或者Insert,Update语句中相应地包含逻辑。

如果我们在答案中包含实现(或者链接到),那将是很好的。

解决方案

回答

根据我们正在执行的操作,我们可能希望将审核从数据层移到数据访问层。它给我们更多的控制权。

我在这里问了一个类似的问题,关于NHibernate和SqlServer。

回答

我完全获得第二名@IainMH(并投票支持他)。

我们希望将其包含在DAL中,并理想地与某种方面/拦截器/代码注入机制相关联。

回答

+2用于在DAL中实施何时/如何进行审核。

至于审核条目本身应位于何处,取决于它如何显示。如果用户可以查看单独的"审计跟踪报告",我将做一个单独的表,但是如果我们想内联显示上次修改类型的审计,则可以标记现有表。

回答

这是我用来审计表的实现:
Pop Rivett的SQL Server常见问题解答5:在审计追踪中流行