关于权限设计问题

阿诺 2012-12-10 04:54:20
哎,搞了好几天了。user,menu,role,action然后有个user_role,role_menu,大概就是这么些表
现在我是实现了根据不同的角色取到了不同的菜单,但是接下来如何控制具体某个操作的权限啊 比如说:
a b用户都有菜单管理这一项,但是a只有查看和编辑的功能。b只有删除和新增的功能。如何才能根据这个用户获取到他应该有的操作啊。
我看了下别人的大概是这样:
a登录,获取a的所有动作。然后当页面点击删除(a不具有这个操作权限),就去对比操作集合中是否存在这个删除操作。a不具有所有没有找到。就提示没有权限。这样的话我想到几个问题:
第一:要是按照上面的方法,删除这个按钮必定是写在页面的 也就是说页面时<a herf+"xXX.do">删除</a>
第二:如果a用户不具有删除,那按道理删除这个按钮不应该显示给他看到的。而上面方法是显示了,只是点击时才告诉a不具有权限!
我的想法是:
页面的所有的操作是否可以从数据库获取到 比如数据库有action表中,id,url,name 即 1,delect.do, 删除。是否有什么办法将<a herf+"xXX.do">删除</a>改为<a herf+"${action.url}">${action.name}</a>
这样的好处是。没有权限的用户就看不到这个按钮,而且这个按钮的名字也可以在后台去修改,加入以后我删除不叫删除了叫停用。如果这样直接将action中name改为停用即可。而不用去修改页面。
求高手。。解惑啊!!!!!
...全文
123 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿诺 2012-12-11
  • 打赏
  • 举报
回复
额 目前情况下 就没有用什么权限框架了就是RBAC模式了!就像我上面描述的那样,请问各位大侠是否有更好的方法实现!在此一并谢过啊!
zh919919 2012-12-11
  • 打赏
  • 举报
回复
你说的这些spring security,shiro都有实现。不过个人感觉shiro可能更符合你的需求,但是spring security更强大
阿诺 2012-12-11
  • 打赏
  • 举报
回复
不要沉了啊!!!人在那里??怎么不来回答!!!呃呃呃呃呃 不能沉
阿诺 2012-12-10
  • 打赏
  • 举报
回复
额 有点没看明白!!
桃园闲人 2012-12-10
  • 打赏
  • 举报
回复
这个当然可以了,你可以使用spring-security来实现,或者自己通过查询数据来实现。 首先当用户登陆成功后将用户的个人信息(包含操作权限)放到session中,当然如果权限非常多就只把用户基本信息放在session中。进入某个页面时,应该通过一个action或者intercepter,在act或inter中判断下一个页面中涉及到的用户权限,通过数据库查询或者session获取判断这些权限当前用户是否可以操作,然后帮把结果通过request传递给页面,页面jsp中通过request中的对应值来控制某些元素显示或隐藏。
阿诺 2012-12-10
  • 打赏
  • 举报
回复
不要沉了啊!!!!!!!!!

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧