使用 CSLA 进行审计?

Use CSLA for auditing?

我们有 CSLA v2.0.50727,他们要求我进行审计检查。所以我想知道是否:

目的是为了能够在table中保存某个字段的值更改和table。例子.

Audit_table

Audit_id

Field_name

Table_name

Row_id

如果可能的话,可以在数据库级别进行审计,这样您就不需要再次实施审计/(为每个访问数据库的应用编写代码来审计完全相同的事情——没有多大意义) .

您要做的是创建一个与生产 table 完全相同的 table 并带有 post 或前缀,并根据您的需要添加其他字段。为每个存储过程添加参数,并为每个审计 table 添加列;时间戳、用户名(来自应用程序)和操作(删除、更新、读取、创建或任何您需要描述记录发生的事情)。

然后在 table 的 CRUD select 之前,使用 operation/action 详细信息和附加参数插入审计 table。

这还允许在查询数据时提供额外的安全性,因为每次应用程序访问数据库以执行操作时,它都会审核 CREATE、READ、UPDATE 或 DELETE。使用用户所需的参数,它还可以检查用户是否有权访问记录,检查用户是否存在 and/or 具有对记录执行操作的特定权限或对象。

代码中唯一的变化是以适合您特定需要的方式将额外的参数传递给数据库。

此解决方案不可知。