权限这块,简单了1天搞定,搞复杂了几个月也搞不定。看你需求吧,一般简单点了就是:角色表,权限表。这个和C/S没啥关系
具体的权限表,大概都是怎么设计的呢?
@HGSJ:
@HGSJ: 最简单的大概这样吧:
角色表:
角色Id | 角色名称 |
---|---|
1 | 管理员 |
2 | 小弟 |
3 | 大弟 |
权限表
资源Id | 资源名称 | 资源类型 |
---|---|---|
1 | 功能1 | 功能 |
2 | 功能2 | 功能 |
3 | 文件1 | 文件 |
角色-权限表
角色Id | 资源Id |
---|---|
1 | 1 |
1 | 2 |
2 | 1 |
用户表:
用户Id | 用户姓名 | 角色 |
---|---|---|
1 | 张三 | 1 |
2 | 李四 | 1 |
另外,你如果熟悉asp.net core的话,看看它默认的权限系统,是另一种实现方式:Claims-based,可以参考下。
@会长: 好的,谢谢
按需分配,不要想的多复杂,看实际需求兄弟
那也是,主要是新手,想自己写一个系统框架,所以想看一下其他人大概是怎么设计的
看需求需要做到什么程度,粗略点直接控制到页面级,细致点控制到每一个点击操作,大致思路就是用户对应某个角色,某一个角色享有哪些操作权限
只是单纯通过角色去控制权限,我感觉如果需要某一个用户有特殊一点的权限,这样感觉会比较麻烦,要多增加一个角色去控制,如果用户多,权限也是各不相同,这是不是可以考虑增加个别用户的权限数据?也就是说,如果用户在权限表中不存在相应的权限数据,就直接使用该角色应该具有的权限;如果用户在权限表中存在权限值,那么直接加载对应数据的权限
@HGSJ: 单独对用户指定权限,增加一张用户权限表就行,用户的所有权限无非就是所属角色的权限加上用户单独的指定权限就行
@风行天下12: 我把用户单独的权限也放到权限表了,看来需要改进,增加一个权限表进行操作,也是自己第一次设计这些东西,考虑的还是有所不足
产品说了算,最适合自己(团队)的就行。
的确呢