計劃創建訪問控制系統。記住一個教育機構,我創建了像主門,區域,建築,層次,部分,房間(每個表都帶有外鍵關係)的周邊表.....現在我想創建部門表和員工表,但是如何我可以定義一個部門到特定的邊界嗎?因爲用戶的部門可以是一個房間或整個建築物。將所有外圍表外鍵插入部門表中並不是一種合適的方式,我猜。我還希望訪問路徑,不想授權,如果用戶通過不同點來到檢查點。我是數據庫設計的新手,可能有一個我沒有想到的簡單方法..請用最佳設計理念幫助創建上述內容。 在此先感謝..如何爲訪問控制和跟蹤創建數據庫設計?
0
A
回答
2
創建以來可固定位置的層次結構的點是管理誰應獲得哪些位置,你出去時的過密的外國管理的單個表所有這些位置的更好鍵(自引用關係)。
考慮下面的ERD:
在這裏,你有一個可以包含其他安全區域的安全區域。人們被授予訪問適當的區域。訪問較低級別區域意味着訪問所有包含較低級別區域的區域。
使用漸進式外鍵意味着必須處理分層數據,這在SQL中可能是一種麻煩。爲了簡化層級導航,我建議使用訪問號碼,正如我在回答this question時詳細描述的那樣。
在任何類型的訪問控制系統中要考慮的一件事是最大限度地減少安全管理員要維護的數據量。許多人將有相同的訪問規則。因此,您可能希望擴展上述ERD以使用基於角色的安全其中組不是個人被授予對區域的訪問權限,並且個人被授予對組的訪問權限。有關基於角色的安全性的更多信息,請參閱我對this question on dba.se的回答。如果可能有所幫助,則可以使用基於角色和個人訪問規則的混合模式。
另一個需要考慮的選擇是您的ACCESS表可能包含允許和不允許標誌。這些可以用於允許訪問更大的區域,同時特別禁止訪問其中包含的較小區域。這種方法可以減少每個人需要管理的數據量。
相關問題
- 1. 跟蹤使用訪問數據庫
- 2. 如何使用mysql數據庫爲我的wordpress網站創建訪問控制
- 3. 數據庫設計:如何跟蹤歷史?
- 4. 如何設計數據庫表以跟蹤價格變化
- 5. (ASP.NET)如何創建跟蹤數據庫更改的實時計數器?
- 6. 數據庫設計跟蹤自上次訪問以來的更新
- 7. 跟蹤訪問計數的Cookie
- 8. 基於角色的訪問控制數據庫設計
- 9. 數據庫設計:定義訪問控制
- 10. 爲SQL中的缺陷跟蹤系統設計數據庫
- 11. 如何跟蹤訪問者
- 12. 數據錄入跟蹤(數據庫設計)
- 13. 針對數據庫中訪問控制列表的安全設計建議?
- 14. 數據庫設計 - 每月服務器計費跟蹤器
- 15. PowerShell跟蹤和控制-M
- 16. Yii創建審計跟蹤;控制器到另一個控制器
- 17. Oracle數據庫審計跟蹤
- 18. 設置數據庫和訪問控制權限
- 19. Android數據使用控制/跟蹤?
- 20. 如何設計數據庫,用於跟蹤與設置最大的項目
- 21. 動態創建和訪問控制值
- 22. 如何在iphone中設置數據庫和訪問數據庫
- 23. linq2sql如何跟蹤數據庫對象?
- 24. SQLAlchemy如何跟蹤數據庫更改?
- 25. 如何跟蹤數據庫更改?
- 26. 如何爲聊天功能創建數據庫設計?
- 27. SubSonic 3.0.0.3 |數據訪問層 - 審計跟蹤
- 28. 如何在Oracle 11g中創建和訪問多個數據庫?
- 29. 如何創建一個由Windows和Android訪問的數據庫
- 30. 訪問數據庫創建問題
非常感謝你@joel。訪問編號是一個很好的分組方法。 – Prasanth 2012-08-17 12:48:26