当前位置:  技术问答>java相关

100分!有一千人左右使用的管理系统的权限问题。请进...

    来源: 互联网  发布时间:2015-09-30

    本文导语:  1>某个用户的权限是在登录验证时一次性全部取出放到一个session中,还是在进入   每个页面时才从数据库中去提取?哪种方法更好一些呢? 2>如果一个用户属于多个角色,那怎样编码来叠加该用户权限?又如何将叠加后的...

1>某个用户的权限是在登录验证时一次性全部取出放到一个session中,还是在进入
  每个页面时才从数据库中去提取?哪种方法更好一些呢?
2>如果一个用户属于多个角色,那怎样编码来叠加该用户权限?又如何将叠加后的权限从数据库中解析出来?
 请给出代码示例。。。
谢谢!

|
1,據你的系統,建議进入每个页面时才从数据库中去提取,
2.首先,將你權限細分,並給定代號;
  其次,設定角色的權限,叠加该用户权限就是取各角色的權限的交集.
Ok?

|
專門用一個table存放用戶的權限設置:id ,modulename,進入每個頁面時,檢查該用戶是否屬於這個模組用戶(也就是在table中是否有(用戶id,此頁面膜組名)這樣一條紀錄),如果有則置此模組的權限控制變量chkModule1=true(初始值均是false).疊加也就是再判斷用戶是否屬於另外一個模組chkModule1.另外再設一個是否可以進入頁面的權限控制chkAccess,初始值=false,並在只要有一個chiModule(i)==true時,讓chkAccess=true.
    下面就是控制訪問了;如果chkAccess==true,那麼允許用戶進入,否則導向錯誤頁面.然後根據用戶所屬的模組允許其執行相應的操作

我們公司就是這樣控制權限的,我覺得還不錯,在這裡我說的有點簡單了

|
1.在数据库的用户属性表里建立用户权限的字段
  可以使用数字如:1,2,3,4..来区分用户的等级
2.在用户登陆的时候可以使用"一次性全部取出放到一个session中"。
3.如果是多个角色,应该是算他最高权限的身份

许多论坛就是这样的。

|
我比较赞成 danieltang(停止思考)的观点:
1,據你的系統,建議进入每个页面时才从数据库中去提取,
原因:你的用户比较多,如果过量的使用session的话,我估计你的服务器吃不消。当然必须给每个用户分配必须的session,例如:session("姓名")等。
2.首先,將你權限細分,並給定代號;
  其次,設定角色的權限,叠加该用户权限就是取各角色的權限的交集.
叠加为:
  在数据库的用户属性表(TBmember)里建立用户权限(class)的字段
  可以使用数字如:1,2,3,4..来区分用户的等级
  例如校友录中,1表示普通用户,2表示班级管理员(也是普通用户),3表示班级创建人(是普通用户也是管理员,只有班级创建人才具有删除该班级的权限),4学校创建人(当然应该管理整个学校了)。
  然后依次类推。

    
 
 

您可能感兴趣的文章:

  • 问一个问题。请问如何在文件系统管理并使用设备,也就是当一个设备装载,下载时。文件系统是如何实现的
  • 刚装好open solaris,使用root登录opensalaris时,系统管理员已经暂时回收了对系统的访问权
  • 请问如何在一个文件系统修改源码管理并使用多个卷(存储设备)
  • 如何使用Jbuilder7、AccessXP,建立一个工资管理系统,欢迎大家的光临!
  • linux/Centos/ubuntu下如何使用umask命令修改新建文件时的默认权限
  • Makefile怎么使用root权限
  • 改了文件使用权限之后怎么保存下来啊?
  • 晕了,使用sudo名ing改了usr文件夹的权限,现在都无法使用sudo命令了
  • 在linux下使用realone的权限问题
  • root权限安装的程序,普通用户怎么使用?
  • 如何给某个用户某个命令的使用权限
  • Centos 5.2下普通权限用户使用Firefox3.0.4无法后退刷新?
  • root帐户使用GCC编译程序时,提示权限不够!!
  • 使用Linux AS4权限设置问题,Chmod 777 目录为什么还是写不进去Session
  • 使用root权限运行自己所编译程序的解决方法
  • oracle用户权限管理使用详解
  • 请问为什么open使用O_CREATE权限设置不对
  • 昨天不小心把/etc/sudoers 权限改成777 结果sudo 无法使用了
  • CRONTAB中关于对安装软件的使用权限问题
  • 使用navicat 8实现创建数据库和导入数据 管理用户与权限[图文方法]
  • mysql SKIP-NAME-RESOLVE 错误的使用时机造成用户权限
  • java中使用Filter控制用户登录权限具体实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • nginx Windows版相关问题及使用说明
  • gcc和cc得使用问题?能互相交换使用么?
  • oracle iis7站长之家
  • 使用VWMARE安装linux的内存使用问题
  • 原来使用在这里:vmware中的redhat 8.0使用声卡的问题!!急
  • 几台机器做lvs,使用100M 网线连接,文件系统使用NFS共享,读写速度会出现问题吗?
  • ubuntu的问题。查看内存使用情况的问题
  • 菜鸟问题,小弟刚刚使用LINUX不久,不知道如何使用编程工具进行编译和运行!
  • 请教两个小问题:一个cgywin下使用vi的问题,另一个socket的问题
  • 弱智问题:我们怎么才知道要使用的方法需要实现什么接口才能使用这个方法呢?
  • 菜鸟问题 : 关于使用Flex的问题
  • 关于linux下QQ和代理服务器使用的问题(2个问题)
  • freebsd做前台 使用win2000做储存器问题问题(非高手免进)
  • 初学者问题(2):关于super的使用问题,请大家多多帮忙。
  • fedara13 初使用之问题
  • 关于windows下的gcc使用问题
  • 移动硬盘使用问题求解?百分相赠!!
  • 关于如何使用内核函数的问题
  • 我在使用j2sdkee1.3.1使用deploytool部署EJB时发现这样的问题
  • 急求,用户程序使用atomic的编译问题!!
  • 关于一个jbuilder使用的问题
  • C++ I/O 成员 tellg():使用输入流读取流指针
  • 在测试memset函数的执行效率时,分为使用Cash和不使用Cash辆种方式,该如何控制是否使用缓存?
  • C++ I/O 成员 tellp():使用输出流读取流指针
  • 求ibm6000的中文使用手册 !从来没用过服务器,现在急需使用它,不知如何使用! 急!!!!!
  • Python不使用print而直接输出二进制字符串
  • 请问:在使用oracle数据库作开发时,是使用pro*c作开发好些,还是使用库函数如oci等好一些啊?或者它们有什么区别或者优缺点啊?
  • Office 2010 Module模式下使用VBA Addressof
  • 急求结果!!假设一个有两个元素的信号量集S,表示了一个磁带驱动器系统,其中进程1使用磁带机A,进程2同时使用磁带机A和B,进程3使用磁带机B。
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • c#中SAPI使用总结——SpVoice的使用方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3