我画了张图,应该能表达我的想法。书法就别吐槽我了,O(∩_∩)O
假如一个用户叫做 Peter的,他可能属于3个用户角色,1: Admin,2:VIp User 3.Normal User. 而1,2,3这3种角色可能会绑定不同的菜单如1,2,3,4,5.而每个菜单都拥有CRUD操作(增删查改),但是我并不是给所有的菜单都会分配增删查改功能,有些菜单只有读取的功能,但是这个只针对特定的用户,比如VIP用户就只能看系统管理这块 菜单的内容,但是管理员可以修改。我想问的是,CRUD操作是 针对用户的还是菜单的?如果是针对菜单的,那么我想修改某个用户组的权限就会出问题了。因为CRUD操作 是针对菜单的,不管我怎么改用户组的权限(或者设置一个菜单的默认CRUD权限,然后做判断比较?),都无法修改用户组的权限。如果CRUD是针对用户的,那我要不要把USERROLE和RoleCRUD表合并呢?或者。。。。我这种设计本身就有问题?有没有更好的方式去做呢?谢谢,小弟新手,还请大神们多多指教!
一般都是
角色表
用户表
用户角色设置
权限项表
权限与角色设置表
这几个表就可以灵活处理各种用户权限。