当前位置:编程学习 > C#/ASP.NET >>

关于权限设置

权限管理涉及的对象:用户  群组  角色  模块
需求:用户可以有不同的群组,用户也可以有不同的角色。用户与群组、角色都是多对多的关系。群组与角色是多对多的关系。模块与角色挂钩。要求用户进入系统后,根据其角色显示不同的操作菜单
实体表:tbl_User  tbl_Group  tbl_Role  tbl_Module。
关系表:rlt_UserGroup  rlt_GroupRole  rlt_RoleModule
思路:1.用户在登录页面输入用户名和密码,如果登录信息无误,继续——
2.判断用户所属的群组,一个用户可能对应多个群组,每个群组有对应的功能权限;如果该用户有多个群组,则其拥有的功能权限为这多个群组所有的功能权限之并集
3.每个群组可能有多个角色(比如说行政组有行政主管、行政员……等角色)而每个角色又对应多个功能模块
4.那我要怎样把用户、群组、角色、模块用一根线串起来呢?

抓狂!哪位大侠可以告诉小女子怎么处理这个权限啊?

--------------------编程问答-------------------- 用户-角色-权限
--------------------编程问答--------------------
引用 1 楼 flyerwing 的回复:
用户-角色-权限

怎么说?我要把 用户  角色  群组  模块四个对象串起来呀 --------------------编程问答-------------------- 思路很清晰啊、 想实现什么功能 ? 登陆后讲所拥有的权限列出来? --------------------编程问答-------------------- 楼上的大哥,你说的么错,给我点意见吧 --------------------编程问答-------------------- 我这里有现成的代码,教我哥哥我就给你
--------------------编程问答-------------------- 我这里有现成的代码,叫我哥哥我就给你
--------------------编程问答-------------------- 抓狂!哪位大侠可以告诉小女子怎么处理这个权限啊?

MM啊,帮顶,另外你思路已经有了,不知道哪有问题

4.那我要怎样把用户、群组、角色、模块用一根线串起来呢?

可以这样设计数据库
用户:ID ...其他信息
群组:群组ID  ...其他信息
角色:角色ID  ...其他信息
模块:模块ID  ...其他信息
用户群组关系:ID 群组ID//双主键,下同
群组角色关系:群组ID  角色ID  
角色模块关系:角色ID  模块ID   --------------------编程问答--------------------
引用 6 楼 cuipinggui 的回复:
我这里有现成的代码,叫我哥哥我就给你

啊,哪里跑出来的
虽然我入道不久,你也不要欺负人哪
源码不要,有本事你直接解决我问题呀 --------------------编程问答-------------------- 实体表:tbl_User  tbl_Group  tbl_Role  tbl_Module。
关系表:rlt_UserGroup  rlt_GroupRole  rlt_RoleModule
我去....已经设计好了....当我没说 --------------------编程问答-------------------- 我想要的是一个业务处理流程。在程序中怎么一层一层把用户拥有的权限通过群组或角色显示出来。
数据库设计方面我觉得应该是这样设计的吧
我在群组与权限、角色与权限这点上混淆了 --------------------编程问答-------------------- 群组与权限、角色与权限
我的理解:
把权限分两种:基本权限,角色权限
基本权限:每个在群组中成员的共有权限,例如QQ群里每个人都可以聊天
角色权限:在群组中担任角色的权限,例如QQ群里的群主可以添加组员
修改关系表就好了,都是联合主键
用户群组关系:ID 群组ID  角色ID  
例如普通组员:1    1      0
群主        :2    1      1
群组角色关系:群组ID 角色ID  权限ID   
             1      0      0
             1      1      2
             1      1      1
权限模块关系:权限ID 模块ID 
             0     聊天
               1     添加
               2     删除 --------------------编程问答--------------------
引用 10 楼 mofabian 的回复:
我想要的是一个业务处理流程。在程序中怎么一层一层把用户拥有的权限通过群组或角色显示出来。
数据库设计方面我觉得应该是这样设计的吧
我在群组与权限、角色与权限这点上混淆了


用户与群组是一种性质,就像产品与类别的关系一样,
用户与角色的关系==群组与角色的关系
OK? --------------------编程问答-------------------- 具体的权限和角色挂钩。

组只作为角色的集合,不需要单独设置权限。

例如,用户A ,属于行政组--角色为行政主管,那么他的权限可以在行证主管里面拿,而行政组只是方便分类。

除非行政组有另外不属于角色分类的权限,那么组另外对应的是另外的组权限。

在业务上而已,角色的权限和组的权限应该不会重合的。




--------------------编程问答--------------------
引用 13 楼 yan267 的回复:
具体的权限和角色挂钩。

组只作为角色的集合,不需要单独设置权限。

例如,用户A ,属于行政组--角色为行政主管,那么他的权限可以在行证主管里面拿,而行政组只是方便分类。

除非行政组有另外不属于角色分类的权限,那么组另外对应的是另外的组权限。

在业务上而已,角色的权限和组的权限应该不会重合的。


说的对
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,