我想管理角色和权限。网络上的大多数设计都是这样的
表:
Users
Roles
UserRoles
Permissions
RolePermissions
这是什么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上检查它似乎更容易。
这种设计有问题吗?你是根据自己的经验推荐的吗?
答案 0 :(得分:-2)
至于您的设计是否推荐,则取决于您尝试解决的问题。但是,您的设计对于RESTful应用程序是有意义的,并且应该具有弹性。
对于您的权限表,您可能需要考虑使用bitmask而不是字符串。