权限问题如何解决?

zb1119 2003-09-15 08:57:04
库里面有人员表,有部门表,有权限表。页面上有财务部门,微机室,学生科等部门。
现在要求人员张三能在财务部门增删改,并且能浏览微机室,学生科等部门。
李四学生科增删改,能浏览微机室并增添记录,财务部门只能浏览。
现在表还没有成型,请教大家应该怎么样建表可操作可维护性最强。

如果能给出实用的案例的链接也可以给分。
...全文
37 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zb1119 2003-09-29
  • 打赏
  • 举报
回复
虽然还是没解决,但还是谢谢永远的草莓地
chanet 2003-09-17
  • 打赏
  • 举报
回复
以 部门做判断就方便啦... :)
Strawberry79 2003-09-17
  • 打赏
  • 举报
回复
前台判断权限的时候,把某个人在某个部门的权限字段取出来,然后判断以逗号分隔的权限有几个都是什么,是否包括当前所要的权限.
如当前人员1要访问部门1进行修改操作,那么就把人员1在部门1的权限从表中选出来,选出来的字段应该是一个串,然后前台去判断这个串里是否包含"修改"这个权限.前台对字符串的操作可以放在BEAN里,这样做应该可以实现!
zb1119 2003-09-16
  • 打赏
  • 举报
回复
这样的确可以,但是正如你所说的,要加入判断,可在界面开发的同事却说无法判断成功。
我们用的是 jsp+oracle,请问你说的怎么具体的实现?最好详尽一点。有例子最好了。
zb1119 2003-09-15
  • 打赏
  • 举报
回复
可是这么做下来,建立一个对应关系表 ,那么这个表应该非常庞大,如果人员记录多的话,那么这个中间表的记录就要非常多了,这样可行吗?
Strawberry79 2003-09-15
  • 打赏
  • 举报
回复
人员表(人员编号,姓名,性别...) 主键:编号
部门表(部门编号,名称,...) 主键:部门编号
权限表(权限编号,中文名,....) 主键:编号
以上为基本元素表,可单独维护,中文名可随便改,只要编号唯一即可确定一条记录

人员,部门,权限的对应关系表(人员编号,部门编号,权限编号)
给人员设置权限时维护该表

再写一个触发器,如若基本表中有元素被删除,则相应删除对应关系表包含该项的记录

Strawberry79 2003-09-15
  • 打赏
  • 举报
回复
这个表里的确冗余数据很多,但满足3NF,这里要解决是两个多对多(人对部门、部门对权限)的问题,冗余肯定是避免不了,只能尽量少一点了,要不这样:

人员表(人员编号,部门编号,权限...) 主键:编号
部门表(部门编号,名称,...) 主键:部门编号
权限表(权限编号,中文名,....) 主键:编号

人员表的结构会如下:

人员编号 部门编号 权限
1 1 1,2,3
1 2 1,3

把对应关系表去掉,这样做你在程序中要判断一下权限,这样记录会少一些,就是操作起来麻烦点
Strawberry79 2003-09-15
  • 打赏
  • 举报
回复
这个表里的确冗余数据很多,但满足3NF,这里要解决是两个多对多(人对部门、部门对权限)的问题,冗余肯定是避免不了,只能尽量少一点了,要不这样:

人员表(人员编号,部门编号,权限...) 主键:编号
部门表(部门编号,名称,...) 主键:部门编号
权限表(权限编号,中文名,....) 主键:编号

人员表的结构会如下:

人员编号 部门编号 权限
1 1 1,2,3
1 2 1,3

把对应关系表去掉,这样做你在程序中要判断一下权限,这样记录会少一些,就是操作起来麻烦点
免费试听地址:B站搜索JeeGit观看《JeeSite4.x数据权限教程》、《JeeSite1.2.7系列基础教程》、《JeeSite4.x系列基础教程》等相关课程! 郑重声明:购课前,请认真听完第一章 课程简介 建议实战人群直接听:第九章、第十章 学生人群、刚入门:全听       数据权限主要讲解内容包含第一章 课程简介31.1 课程目标31.2 适用人群31.3 课程简介31.4 环境要求31.5 课程知识点大全31.6 课程售价31.7 购课声明31.8 资源清单31.9 售后方式41.10 讲师介绍4第二章 权限基础42.1 权限模型概述4第三章 JeeSite权限管理模型123.1 JeeSite1.2.7 权限管理模型123.2 JeeSite4.x 权限管理模型123.3 JeeSite4.x权限设计的扩展13第四章 用户管理144.1 JeeSite4.x内置用户类型144.1.1 用户管理思路144.1.2 网站会员、员工、单位、个人登录视图配置154.2 用户数据权限类型164.3实战训练、调试、日志查看16第五章 机构管理16第六章 角色管理186.1 JeeSite4.x角色管理概述186.2 JeeSite4.x越级授权与菜单权重186.3 JeeSite4.x 越级授权可能存在的隐患极其解决方案196.4用户表如何区分非管理员、系统管理员、二级管理员206.5 角色权限注意事项206.6 角色授权数据范围使用注意事项216.7 为何用户不设置员工权限无效?236.8 岗位管理与角色分类的岗位分类与角色分类有何区别?23第七章 二级管理员23第八章 系统管理员238.1 系统管理员238.2 总结:何时使用超级管理员、系统管理员、二级管理员?23第九章 Jeesite数据权限调用239.1 JeeSite4.x数据调用基础239.2 JeeSite4.x 实现数据列权限推荐解决方案249.3多数源模式下数据权限bug简易解决方案249.4 JeeSite4.x 自定义扩展数据权限249.5支持全球地区、全球企业、全球机构、全球部门授权24第十章 JeeSite数据权限实战2410.1 案例一2410.2 案例二2410.3 案例三2510.4 案例四2510.5 案例五25第十一章 JeeSite4.x常见问题解答251.1数据权限管理的代码会公开吗,购买了能看吗?251.2 JeeSite数据权限教程是Thinkgem录制的吗?25第十二章 参考阅读2612.1、JeeSite官方文档2712.2、美国国家标准与技术研究院2712.3、中国国家标准化管理委员会2712.4、ITSEC欧洲安全评价标准2812.5、百度学术2812.6、开源框架2912.6.1 JeeSite2912.6.2 Casbin2912.6.3 Eladmin2912.6.4 Spring-boot-demo2912.6.5 Jeeplatform3012.6.6 Pig3012.6.7 Jeecg-boot3012.6.8 Jfinal3012.6.9 Guns3112.6.10 Zheng3112.6.11 Cloud-Platform3112.7 博文资源31

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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