2013-07-01 56 views
2

我想管理角色和權限。大多數設計對網絡這個樣子哪個角色權限數據庫設計?

表:

​​

這裏,什麼是permissions?我想這樣的設計來代替:

Users 
Roles 
UserRoles 
Permissions 

在這個設計中,Roles應該是:

id |  name 

permissions應該是:

ID | role_id |部分|動作

permissions定義哪個部分具有哪個操作控制。像這樣:

id | role_id | section | action 

1 |  2  | posts | edit 
2 |  2  | posts | add 
3 |  2  | posts | delete 
4 |  3  | users | approve 
5 |  3  | users | edit 
6 |  4  | articles | delete 
7 |  2  | users | givepermission 

它使用兩個字符串,而不是一個額外的表和數字。同時在PHP上檢查它似乎更容易。

這個設計有問題嗎?這是你根據你的經驗推薦?

回答

-1

至於你的設計是否被推薦,那麼這取決於你試圖解決的問題。但是,您的設計對於RESTful應用程序是有意義的,並且應該具有彈性。

對於您的權限表,您可能需要考慮使用bitmask而不是字符串。