我想使用OriginalValuesMap對保存進行一些自定義審計。在breeze文檔中,他們提到您可能需要添加額外的安全性(它來自客戶端,所以不要相信它)。Breeze:如何使原始值映射更安全
我的目標是找到一種方法來驗證原始值映射未被篡改,以便我的審計條目準確無誤。 (我想擊敗的一個漏洞利用的例子是有人在原始值映射中改變了一個值,使它看起來好像沒有改變值)。
我在想這樣做這樣的事情:
- 當數據從服務器查詢,應用散列到實體
- 的值包括在實體的串行圖哈希(所以散列值是發送給客戶端的一個不透明的值,但散列的鹽值只是服務器所知的一個祕密)。
- 當客戶端調用保存更改時,將散列回顯給服務器
- 在對話實例內部,使用來自OriginalValuesMap的值重建原始實體。
- 這個「de-deltaed」實體的哈希值應該與原始值匹配。
我唯一的問題是,我不知道如何將散列插入微風的序列化圖並將其提取出來。
它看起來像有幾個有前途的擴展點(客戶端上的自定義序列化器,自定義內容提供者)。
如何做到這一點? 有沒有更好的方法? 我是否堅果?