我有一個稍有不同尋常的安全要求,我正在尋求有關最佳實踐或至少非脆弱方法的建議。ASp.NET MVC EF4 SQL表或字段級安全
場景:內聯網系統。關於一些相關實體的數據將被視爲私有。這被稱爲系統的未發佈部分。只有特定的用戶可以訪問這些數據。在某個階段,用戶從這些數據中進行選擇,標記一些記錄並將其發佈到「已發佈」一側。發佈到已發佈側的數據將從未發佈側移除。然後大部分系統用戶可以在已發佈方的記錄上工作。
我知道這聽起來像是父母記錄上的bool字段,標記爲已發佈或未發佈,但讓我解釋我們正在替換的系統是如何解決問題的 - 這是我們需要模擬的安全級別。它是一個平面文件數據庫(Dataflex),將未發佈和發佈的數據放在單獨的表中,位於單獨的服務器驅動器上,備份到單獨的磁帶,在不同的房間中,由不同的人進行物理訪問。網絡權限確保發佈的用戶無法查看未發佈的數據。該軟件還管理權限,但如果出錯或程序員犯了錯誤,他們仍然無法訪問錯誤的數據。可能會提供這些數據的系統管理員有正面的安全審批。
所以我正在尋找的是如何實現與MVC,EF4,SQL實現這一點的體系結構的建議。在一個極端情況下,我構建了兩個帶有兩個sql數據庫的系統,具有不同的權限:可能包含web.config中包含的差異,因此它實際上是相同的代碼庫。在比例的另一端,它的表格中的控制器方法標記爲拒絕訪問。 (這是不好的,因爲如果一個程序員搞砸了,說一個搜索查詢,它返回的數據來自錯誤的類別,並且讓它不被人注意到,它很可能導致人類的犧牲,狗和貓一起生活......質量歇斯底里)
對不起,冗長的描述。最佳做法或其他建議如何訪問此尋求。
出於好奇,什麼行業都在你的工作? :) – RPM1984 2011-02-04 09:56:30
它與皇室相關。 – Andiih 2011-02-04 10:01:36