我们有CSLA v2.0.50727,他们要我进行审核检查。所以我想知道是否:
目的是能够在表中保存某个字段和表的值已更改。实施例。
Audit_table
Audit_id
FIELD_NAME
值
TABLE_NAME
ROW_ID
答案 0 :(得分:3)
如果可以在数据库级别进行审计,那么您不需要再次实施审计/(访问数据库的foreach应用程序编写代码来审计完全相同的事情 - 没有多大意义)。< / p>
您所做的是创建一个与生产表完全相同的表格,其中包含帖子或前缀,并根据您的需要添加其他字段。对于每个存储过程,添加参数&amp;为每个审计表添加列;时间戳,用户名(来自应用程序)和操作(DELETE,UPDATE,READ,CREATE或任何你需要描述记录发生的事情)。
然后在CRUD中从表中选择并插入到审计表中,其中包含操作/操作详细信息&amp;额外的参数。
这也可以在查询数据时提供额外的安全性,因为每次应用程序访问数据库以执行操作时,它都会审核CREATE,READ,UPDATE或DELETE。使用用户的必需参数,它还可以在某种程度上检查用户是否有权访问记录,检查用户是否存在和/或具有对记录或对象执行操作的特定权限。
代码中唯一的变化是以适合您特定需求的方式传递给数据库的附加参数。
此解决方案是不可知的。