关于权限的设计问题(急用)各位高手帮帮忙!先谢过

问题描述

我是jsp新手,我做的是一个用jsp+sql的课程精品网站,其中一个版块是登录系统,分为学生登录和教师登陆。登录系统已经做好了。现在我想实现的是当教师登录时能够有一些权限权利,就是相当于论坛中的管理员。比如说在这个网站中有在线自测板块,教师登陆之后能够修改添加删除这里面的自测题。希望各位高手帮忙,给我一些这方面的权限代码或是意见、思路什么的,先谢过好心人了!

解决方案

解决方案二:
1.写死2.用数据库来控制,弄个表,用户id,权限id比如教师的是1,学生是2,然后其他权限暂时为1,2,3,修改自测题的为4表里的数据位11121314212223每次登陆的时候,动态去拿数据,生成菜单
解决方案三:
写死,这种方式不适合。小项目没问题。
解决方案四:
这样的小项目用过滤器Filter就可以了!
解决方案五:
用过滤器
解决方案六:
比较常用的方式首先建立三个表1.user表id,name,password,roleid2.role表id,name,action3.action表id,action比如说你的教师有查看试题和修改试题的权限你在action(操作表)中插入1,"viewQuestion".2,"updateQUestion"然后在role(权限表)中插入1,“教师”,"1,2"接下来你根据用户的roleId可以得知他们有哪些操作,然后根据这些操作显示相应的菜单
解决方案七:
可以弄个表ID字段url可使用人查看1,2更改2,3删除3ID职业1学生2老师3校长登陆的时候自动生一下才菜单没做过建议
解决方案八:
引用5楼xtbzqw的回复:

比较常用的方式首先建立三个表1.user表id,name,password,roleid2.role表id,name,action3.action表id,action比如说你的教师有查看试题和修改试题的权限你在action(操作表)中插入1,"viewQuestion".2,"updateQUestion"然后在role(权限表)中插入1,“教师”,"1,2"接下来你根据用户的roleId可以得知他们有哪些操作,然后根据这些操作显示相应的菜单

在做权限的时候,一般都是这么做的。。。
解决方案九:
小项目用filter,对某些页面或文件夹,判断类型是否是教师就行了大项目就用了5个表1、权限(树型结构,必要时需要保存JSP的URL)2、角色(下拉框multiple)3、人员(树型结构,按部门——人员展示)4、角色权限关联表(页面上不可见)5、人员角色关联表(页面上不可见)在登录时取该人员的所有权限,放到session里在访问页面时,用一个filter统一判断第二个方法已经在实际中应用多年了,我也是COPY的~~
解决方案十:
做真正的权限的话就像CRM那样的...三表,这个的话CSDN资源里有.如果你项目小的话可以用写死也可以用过滤器什么的.
解决方案十一:
http://www.acegisecurity.org/研究研究。
解决方案十二:
写死和动态的结合,要是关于树的节点就写活,如果是也连接,什么的就没必要做的那么活了,直接表1,中间表,表2,然后根据角色id,加载到不同的功能餐单,,毕竟功能菜单不会改变太多
解决方案十三:
我的工程不是很大,大家能不能具体告诉我一下写死的方法,在线等高手帮忙!
解决方案十四:
具体的代码和实现方法。谢谢
解决方案十五:
项目设计中关于权限,角色,操作功能三者之间的探讨总结(2009-03-14)收藏今天是星期六,经理要求在项目(医疗项目)期间由双休改为单休日,啥也不说了。今天开会讨论了关于数据库中表的设计和关联关系的问题,而我所做的模块就是CRM模块中用户管理,预约模块,领导查询模块,后台管理模块等。其中讨论最激烈的一个模块就是用户管理中,对于系统的功能的使用和用户角色,和用户三者之间的划分问题。因为我们要做的这个项目是根据用户权限的不同,提供相应的服务如:挂号预约,VIP服务,人工服务等系统功能,不同的用户登录系统之后根据用户角色(也就是用户权限,可以这样理解)的不同来享受相应的服务。我的设计思路是:建立一张用户User表和一个用户权限表Right表,User表和Right表之间通过Right表的RightID来进行一对一关联,这样也就确定一个用户对应一个权限,这样在实现时就可以根据用户的权限来判断用户是否有权限来使用该系统功能。我想这也是一般大家都是这样认为的。但是现在要变化,一个用户要有多个权限,比如,一个人既可以是项目中保健信息的维护人员也可以是人工服务人员(人工服务:包含电话,语音等)。或者说:系统的这个用户角色只能够查询,另一个用户只能去修改和更新,而另一个用户既可以查询也可以修改和删除。这样一变化,原来设计的表就感觉不能满足要求了。从而在Right权限表进行了修改,添加了一个RightLevel字段来进行权限级别的划分,分为1,2,3等级。我想这样差不多就能解决呢,可是想在实现时你要对一个功能的使用进行权限的判断时,先是通过RightID来判断用户能够使用该模块,对于该模块中的子模块就像我前面说的查询,添加,删除等再进行RightLevel的判断。可是,这样也有缺陷,你要是系统管理员呢,那么多子模块难道要都要添加记录,你也可能说是可以给系统管理员一个最高级用户权限。但是这样到后面进行扩展时就有很多局限性了,而且我们这个系统不是只针对一家用户使用的,要和原有的HS系统结合在一起就会麻烦重重了。而且院方一般希望系统管理人员对于角色权限的设定可以根据系统功能来确定,比如:客户服务人员(人工服务人员)只可以进行这一模块的功能,领导只可以查询各个模块的信息,不能添加或者修改,而网站信息人员可以对网站信息进行更新的权限。最后,解决办法就是,建立一个系统操作与用户角色的关联表tb_r_Operate_Actor,即是把这里的权限表改为角色表,每个角色关联相应的系统中的各种操作,即也需要建立所有系统中功能操作的一个操作表Operate,它和角色表之间是多对多关联,所以这里在它们之间建立一个关联表。而系统中每个操作在Operate表中都是一条固定不变的记录。当然这种做法有利有弊,前提是你系统的功能操作是一定的,不能太多,不然在实现时会比较麻烦,对于每个操作都要进行判断。但是这样换来了系统的课扩展性。上面是针对我们这个项目而言的,希望在这里总结一下,和大家探讨!楼主参考一下,这是我的一个博客
解决方案:
我也不懂,学习一下

时间: 2024-11-08 19:38:52

关于权限的设计问题(急用)各位高手帮帮忙!先谢过的相关文章

24色位图,字母图片验证码识别,基于MFC对话框的程序,在线求助,高手帮帮忙

问题描述 24色位图,字母图片验证码识别,基于MFC对话框的程序,在线求助,高手帮帮忙 24色位图(如下图)字母图片验证码识别,基于MFC对话框的程序,在线求助,高手帮帮忙

跪求高手出现-求高手帮帮忙,不知道该怎样解决

问题描述 求高手帮帮忙,不知道该怎样解决 Exception in thread "main" java.lang.StackOverflowError at java.text.DecimalFormat.subformat(DecimalFormat.java:903) at java.text.DecimalFormat.format(DecimalFormat.java:692) at java.text.DecimalFormat.format(DecimalFormat.j

我想在html页面中引用freemarker但不知道该怎么配置,求各位高手帮帮忙

问题描述 我想在html页面中引用freemarker但不知道该怎么配置,求各位高手帮帮忙 我想在html页面中引用freemarker但不知道该怎么配置,求各位高手帮帮忙 解决方案 纯html中无法使用.在动态项目中才能使用,如jsp,asp 你要想使用freemarker标签,必须能够被FreemarkerServlet拦截到,然后解析处理成html 所以你直接用ftl页面就行了,为什么要静态网页和动态模版混着用呢 如果真想用..web.xml 中freemarker拦截器(制定拦截*.ht

apache linux-Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了

问题描述 Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了 Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了 解决方案 第一步,切换到root下su - root 第二步,安装super先到ftp://ftp.mdtsoft.com/pub/super 下载super-3.14.0-1.i386.rpm.这是一个RPM文件,其它包括了两个工具:setuid和super,以及它们的文档和man手册.用下面的命令将它安装到系统中: % rp

循环哪里出错了,逻辑错误查找,高手帮帮忙

问题描述 循环哪里出错了,逻辑错误查找,高手帮帮忙 #include int main() { int donation=0,amount=0; //donation代表每次捐献的金额,amout代表总额 while(amount<10) //捐款超过十万就不再接受捐献 { scanf("%dn",&donation); amount=amount+donation; } printf("%d",amount); return 0; } 为什么每次输入

微网站-微信公众平台内部接口调整,以前写的代码用不了了,有懂这一块的高手帮帮忙吧

问题描述 微信公众平台内部接口调整,以前写的代码用不了了,有懂这一块的高手帮帮忙吧 近几日微信公众平台内部接口调整主要有: 1.自定义菜单生成验证方式改变,部分用户生成自定义菜单会有curl_35问题 2.公众平台不再接受一键拨号类的tel:协议,含有此类自定义菜单的一律不通过,表现为生成的时候出现:sub button url..... 就是提示自定义菜单中不能含有一键拨号类信息 3.url和token绑定的时候验证时间缩短,导致部分服务器本身反映不够快的客户url超时 以前写的代码用不了了,

高手帮帮忙:

问题描述 高手帮帮忙:怎么用C#实现接收发送文件 解决方案 解决方案二:socket,remoting等吧解决方案三:1句两句说不清楚http://blog.hnce.net/post/263.html

javascript-求教js当中的监听事件的问题,查了半天,也没有个所以然来,js高手帮帮忙啊

问题描述 求教js当中的监听事件的问题,查了半天,也没有个所以然来,js高手帮帮忙啊 有一个项目,有一个公共的界面,也就是无论做什么操作都会存在一个按钮,我就想在页面未登陆的的时候把按钮隐藏,该怎么做呢??要考虑登录超时跳转登录界面依然能让他隐藏 解决方案 默认隐藏,访问页面的时候自己从session什么的判断是否登录,登录了将信息赋值给一个js变量,然后显示按钮 <input type="button" style="display:none" value=

c#调用c++编写的dll总是出现问题,哪位高手帮帮忙

问题描述 我的这个程序,使用c#调用c++编写的dll,总是出现以下这个问题,那位高手能够帮帮忙,小女子在此先感谢了.大家就救我吧.c++编写的dll中的函数voidEFSgetUsrThesaurus(pUsrDicFileNameTableDicFlNmTbl,pUsrKeyWordTableKeyWdTbl,pUsrThesaurusTableThTbl,EFSDICSTATUS*EFS_dicstatus);c++中的结构体typedefstruct{intCnt;struct{char

根据IP 获得当前地区的天气情况 怎样实现 高手帮帮忙

问题描述 类似QQ那样的,包括小城市一样可以查的到的!!我试过抓取数据好像和IP联系不到一起来,希望做过的高手帮帮忙谢谢在线等 解决方案 解决方案二:取到ip之后再按照ip获得城市再通过城市取就行啦...解决方案三:肯定得通过第三方的.用webservice比如这个就不错http://www.webxml.com.cn/zh_cn/web_services.aspx?offset=5这个不是广告告告告告告告告告告告告告..广告告告告告告告告告告告告..广告告告告告告..广告告..解决方案四:第三