我們公司正在從單一用戶應用程序遷移到多個問題。我們的設置是用戶將擁有一個產品,並且該擁有權是通過一個外鍵。由於他們擁有產品,他們將有權執行產品上的所有功能。如果您不擁有產品並且不是管理員,則無法訪問產品或其任何功能。其他實體的多用戶權限
現在我們試圖打開對產品的訪問權限,直至與相應所有者分組在一起的其他用戶進行協作。包括所有者在內的這些其他用戶可能基於一組權限具有有限的功能。權限的範圍已經被設計爲基於
- 的人到產品的所有權關係(FK)
- 通過Person_Product橋表
- 人爲中心集團產品關係的人到產品的關係如果產品屬於一個並且只有一個組
- 要組織的人員(Applicantion Wide Permissions),如果未聲明通過其他關係的權限,則該用戶默認權限。
這些關係已經實現,但系統在根據關係進行大量計算時出現了問題。例如獲取用戶對一系列產品的權限顯着影響了性能。另外我們系統的靈活性受到新的關係和抽象的限制。
數據庫方面,我將關係2看作是可以用來表示所有關係的行爲以及我們公司將被要求排在前面的任何未來抽象的基本塊。
我是否正確的這一思路?或者我們現在走在正確的軌道上嗎?任何有用的輸入將不勝感激。
相關技術被標記。
它不是真正的關注速度,更多當前設置的規範化和不靈活性。我們設計了數據庫的基礎來反映更抽象的邏輯(範圍3和4)。現在我堅持使用currrent實現,但我會記得下次我需要設計一個像這樣的系統。謝謝您的回答。 – 2011-06-08 21:33:18