2016-12-16 65 views
-1

我們有CSLA v2.0.50727,他們要求我進行審計檢查。所以我想知道是否:使用CSLA進行審計?

  • ¿我能知道CSLA對象的哪些屬性發生了變化?
  • ¿什麼建議,我必須在我的數據庫映射表名和字段,用價值觀和我的屬性的名稱?我們打算在性能使用自定義的註釋;雖然我們正在調查如何。

其目的是爲了能夠保存在某個表和表中,以改變某個字段和表的值。例。

Audit_table

Audit_id

FIELD_NAME

TABLE_NAME

ROW_ID

回答

1

如果可能的審覈可以在數據庫級別上進行,所以你不需要實施審計再次/ /(foreach訪問數據庫寫入代碼審覈完全相同的事情的應用程序 - 沒有多大意義)。

你要做的就是創建一個表,酷似一個崗位或前綴生產表和其它字段添加到您的需求。對於每個存儲過程,爲每個審計表添加列添加參數&;時間戳,用戶名(來自應用)和動作(刪除,更新,讀取,創建或任何你需要描述記錄發生的事情)。

然後一個CRUD之前,從表中選擇並插入到審計表的操作/動作細節&額外PARAMS。

這也可以在查詢數據時增加安全性,因爲每次應用程序訪問數據庫執行操作時,都會審計CREATE,READ,UPDATE或DELETE。通過用戶所需的參數,還可以檢查用戶是否有權訪問記錄,檢查用戶是否存在和/或具有對記錄或對象執行操作的特定權限。

在代碼中唯一的變化是在適合您的特定需求的方式傳遞給數據庫的其他PARAMS。

此解決方案是不可知的。