权限问题,权限要细化到增删改查?

ruisheng_412 2009-09-07 09:35:50
在项目中,权限要细化到增删改查。
请教一下几个问题?
1,数据库怎么设计?
2,页面上怎么导航权限?
3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限)
...全文
1312 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanghamming 2009-09-08
  • 打赏
  • 举报
回复
配置拦截器
给帐户一个权限值;
如:100000
第1位表示全权,第2为增操作,.....
每次操作检查它的权限即可。
奇葩的钩子 2009-09-08
  • 打赏
  • 举报
回复
如果是比较大的系统,就应该这样设计:
1.角色 角色---功能 人员--角色
2.角色 角色--功能 人员--岗位 岗位--角色
3.人员--功能
xuyang840117 2009-09-08
  • 打赏
  • 举报
回复
晕 没写完就提交了
点错了

把这些对应的 组和 ID 分配到 每个画面

实现的时候 在每个画面去 ID 解析(写个共通)
解析后得出该用户的权限 在页面实现 具体实现 看你用的什么技术了
奇葩的钩子 2009-09-08
  • 打赏
  • 举报
回复
1.给需要控制权限的按钮一个唯一的ID
2.权限分配时,先用JS找出权限分配页面所有的button,将需要控制的button的ID和用户ID保存到数据库
3.用户登陆后,将所有权限控制的button的ID数组查出来放到session,然后在页面上判断登陆用户是否
有此按钮的权限
xuyang840117 2009-09-08
  • 打赏
  • 举报
回复
一个完整的权限系统不是那么简单的~~~~
特别是在权限分配的时候,一般很少有一对一的权限设计
这样数据库负担很大
除非你们人少

一般都是
权限的底层是 增删改查
然后把这4项分组

人的权限 底层是人的ID (包括领导ID) 打个比方
上层 是部门 一个部门对应多个人

就这样简单的4项

增删改查 01 02 03 04
增删改查组 01组 02组 03 组 04组 05组。。。。(组里包括增删改查的某几个,当然有时候这层可以不要)
人 iD 0001 0002 0003 ...
部门 001 002 003 ...

交叉编组 人|权限 组合0001|01
部门|权限 001|01
  • 打赏
  • 举报
回复
数据库里要有角色(js)的字段。
页面上<s:if test="js==?"/> </s:if>
各种角色独有的功能写在里面
yekai012 2009-09-08
  • 打赏
  • 举报
回复
1,数据库怎么设计?
[看自己的需求吧,一般来说,权限与用户的设计是分开的,看看windows就知道了,用户属于了某个组后, 就拥有了权限]

2,页面上怎么导航权限?
[这个自己定吧,无所谓]

3,页面上怎么控制增删改查?
[永远不要依靠前台页面来做,即使前台做了,也要在业务层做严格的管控]
APOLLO_TS 2009-09-08
  • 打赏
  • 举报
回复
这个要全局规划的。
----------------
如果请求有特点包还权限值那么你可以用拦截器。
如果你想通过映像配置那就要想怎么用函数.
------------------
如下有本人的一套方案,自己研究:

--反射方法表T_REF_METHOD
CREATE TABLE IF NOT EXISTS T_REF_METHOD(
RE_ID INTEGER NOT NULL AUTO_INCREMENT COMMENT 'ID',
ROLE_ID int(4) NOT NULL COMMENT '角色ID',
TASK_DEF_ID bigint(20) COMMENT '任务定义ID',
PRG_SUB_NAME varchar(20) NOT NULL COMMENT '子项目名',
KEY_NAME varchar(50) NULL COMMENT '导向关键字',
METHOD varchar(100) NOT NULL COMMENT '方法名称',
PRIMARY KEY (RE_ID)
)

函数写法
METHOD(统一参数){

}
24K純帥 2009-09-08
  • 打赏
  • 举报
回复
就设计一张表,再用sql语句,控件做增删改行不
猿敲月下码 2009-09-08
  • 打赏
  • 举报
回复
在数据库表中设置权限值字段,用户登录后取出这个权限值,跳转到某个页面后根据这个权限值进行判断
_Nick_ 2009-09-08
  • 打赏
  • 举报
回复
1, 設計一個功能分類表
2,設計一個功能表
功能於角色 屬於多對多
3,設計一個角色表
用戶於角色 屬於多對多
4,設計一個用戶表

一共6張表, 為用戶授權,

由於一個項目下來,它的所有功能分類,功能是固定的,所以 前面那2個表是 死表,
在頁面中, 判斷 當前用戶 屬於的所有角色的所有功能分類的所有功能 中是否包含你點擊的那個按鈕,或鏈接所屬的功能id
shadow55 2009-09-08
  • 打赏
  • 举报
回复
建议lz学习一下spring的spring security如何数据不牵涉到细粒度方面的控制,spring security就可以完全实现你需要的功能!
Coolfatman 2009-09-08
  • 打赏
  • 举报
回复
很多做法理论上很好,可是工程上比较累。我来说说工程上实际的做法吧。
1,数据库怎么设计?
数据本身不做特别设计。只是一般增加权限表,角色表,用户表和关联表。
权限表: 记录所有权限项目。
角色表: 比较流行,可以用身份表示权限,也可以用部门表示权限。
用户表: 管理所有用户信息,包括密码,姓名等等。
关联表: 包括用户和角色的关联表,和 角色与权限的关联表。 多多关联。
2,页面上怎么导航权限?
所有权限分菜单项实现最简单。就是 XXX查询,XXX新增,XXX修改,XXX删除四个菜单。
简单的做法,查询 是基本权限,没有就查询,删除,修改的菜单。
修改,删除要同时含查询权限。
新增独立权限。
3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限)
不需要了。
Rinoajun 2009-09-07
  • 打赏
  • 举报
回复
可以控制action通过过滤器拦截
keyboardsun 2009-09-07
  • 打赏
  • 举报
回复
你把按钮做成自己的标签。给按钮一个id便可
那样便于控制。

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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