java 权限管理系统中数据权限的设计与使用
在一个权限管理系统里面。角色是可以在页面中添加的。每个角色拥有的权限也是可以配置的。那么问题来了,假设现在添加了n个角色,每个角色我都分配了不同的数据查阅权限。比如A角色...
在一个权限管理系统里面。角色是可以在页面中添加的。每个角色拥有的权限也是可以配置的。那么问题来了,假设现在添加了n个角色,每个角色我都分配了不同的数据查阅权限。比如A角色能查全表,B角色能查前五条记录。。第n个角色能查xx条记录。这些就涉及到数据权限的配置问题。可是在java后台代码中怎么控制不同角色查询不同的表呢?dao怎么封装?如果是多个表的查询呢?
展开
5个回答
推荐于2020-01-27
展开全部
感觉你这个太强悍了。
一般都是给菜单授权,角色授予菜单,授予菜单权限的用户能操作相应的菜单。
你这个是给角色授予查询表的权限,还有多少条记录的。
查多少条记录,这个真心不知道怎么搞;
授予查询表的权限的这个应该不难,每次查之前都先验证一下是否在授权范围之类。
多表查询的只要一个不满足就不能查询。
一般都是给菜单授权,角色授予菜单,授予菜单权限的用户能操作相应的菜单。
你这个是给角色授予查询表的权限,还有多少条记录的。
查多少条记录,这个真心不知道怎么搞;
授予查询表的权限的这个应该不难,每次查之前都先验证一下是否在授权范围之类。
多表查询的只要一个不满足就不能查询。
追问
我觉得,其实权限控制是有分:功能权限、数据权限、字段权限的。
功能权限:就是某个角色,拥有哪些菜单,每个菜单页面中可以操作什么事情(crud)。
而我问的是数据权限。举个例子就是:同样一个查询功能,不同角色查出来的结果也不一样。比如主管能查他管理下的所有员工信息,而员工只能查阅自己的信息。
追答
而我问的是数据权限。举个例子就是:同样一个查询功能,不同角色查出来的结果也不一样。比如主管能查他管理下的所有员工信息,而员工只能查阅自己的信息。
这个也不涉及到说给角色授予查询表的权限(不管是谁,查询的表都是一样的),只是查询的时候,有的能查整个部门的,有的不能。
展开全部
建一张数据权限表,里面放上对应的需要数据权限的表名,权限名,以及各权限附加的查询条件,sql可以直接数据库填入,在需要插入的地方直接查询需要插入的sql,或者AOP也可以试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建立一个角色资源表,表中各种资源设置不同的类型,比如菜单类型为0,数据权限类型为1等等,表中也可以规定能访问的数据规则,dao取得表中数据规则放到sql语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个可以这样呀,1.在录入数据的时候把录入人的id存了。2.用户表里面加一个字段是否是管理员就好了,查询上做过虑、如果是管理员就查询所有,否则就查询他自己的就好了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在底层可以设置map集合拼查询的条件
页面通过传用户id来查询部门的话,只有他自己部门的信息他才能查。我也想问问怎么实现菜单多级递归
页面通过传用户id来查询部门的话,只有他自己部门的信息他才能查。我也想问问怎么实现菜单多级递归
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询