数据库权限系统设计
最近设计,权限系统设计:1、同一个人P属于多个部门{属于a部的负责人(查看、执行[审批、归档之类的]的权限),a部下面有好几个子部门(查看、添加、修改、删除),a下的一部门a_b,暂时没有人,也由人P来负责部门a_b的事务,但不能操作a部门下其他部门的添加、修改、删除权限},这个怎么设计,不知道说明白没有?
首先不能对这个人设置两个账户什么的;也不能给他两个角色,登陆的时候选择进入的角色,因为,如果给他这两个角色,那么登录进来,就具有了可以操作a部门下其他部门了,是不对的。
2:对于数据权限的范围,以前做了userid对应数据主键的映射表,然后再去where条件in (数据主键),如果该用户的拥有的数据权限多的话,容易造成sql条件超长,后面,又对这个数据类型加了分组id,勉强可以解决,还有没有其他办法解决呢?
------解决方案--------------------
我原来的解决方法是,有特殊权限的增加超级角色
------解决方案--------------------角色权限关系表
------解决方案--------------------
抄现成的
------解决方案--------------------不是数据库层面能较好解决的,你考虑需要一个平台。在实际应用中,这可能是一个条件组合。
比如:制单人所属部门的科长可以审核,而需要有高工级别的。
------解决方案--------------------
------解决方案--------------------.net 再带membership
------解决方案--------------------嗯,权限的系统设计学习了
------解决方案--------------------特殊表可不要,放到权限表中做为特殊权限
------解决方案--------------------
------解决方案--------------------帮顶。
------解决方案--------------------http://www.noahweb.net/mail/2/Project.htm#biao