2010-09-20 49 views
2

我有一個基於規則和權限的訪問控制,這意味着每個組都有權訪問某些控制器,而用戶是這些組的一部分。 (這在CakePHP框架中實現)。用戶訪問控制和數據可見性

但是這個結構讓我知道哪些用戶被授權「使用」像訪問報告或添加新用戶,但我想知道什麼是最佳設計模式或最佳實踐,我可以用它來實現數據可視性其中一些團體。例如,「Ordinary User」組的成員只能看到他們自己的數據(data.user_id = this.user_id),但「Supervisors」的成員應該看到更多的數據(data.user_id = this.supervisor_user_id)和「The Boss」成員應該看到一切。

我希望我自己清楚,反正我現在用的認證模式是基於這種模式:

http://www.studiocanaria.com/articles/cakephp_auth_component_users_groups_permissions_revisited

回答

1

只需添加您的權限,請before_find()。您可以在逐個模型的基礎上完成,也可以將其構建到app_model中。這將允許您限制數據或添加/刪除字段,而無需修改控制器或查看文件。

+1

我在數據庫設計和更具體的方面看更多,如何在數據本身插入這樣的「可見性權限」 – 2010-09-28 17:10:54