选择显示字体大小

浅谈如何有效建立权限管理体系

本文拟结合powerbuilder语言,简述如何在传统c/s应用系统当中有效建立权限管理体系。
何谓权限管理体系?就是如何控制操作使用者对软件功能和系统数据的访问权限的各个方面。传统的c/s应用系统,多是“前台应用程序+后台数据库表”两部分,这样就决定了我们考虑权限管理体系就必然要考虑两方面的内容:
1、用户在前台的功能权限:即该用户能够使用哪些菜单或窗口功能,例如:张三只能使用数据录入功能,不能使用管理审批功能;
2、用户在后台的功能权限:即该用户能够对库表具有哪些读、取访问权限,例如:张三对于x_table表只有读权限,没有写权限;
是否上述两方面权限管理就足够了呢?答案是否定的,因为从应用角度来考虑,还需要对用户的数据访问权限进行控制,例如:张三属于a分局,李四属于b分局,张三、李四各录入一条数据,那么在查询时显然张三只能查询到其自己录入的数据记录,而不允许其查询到李四录入的数据记录,或者只能查询而不允许修改,因此这就引出了第三方面的权限管理内容:
3、用户在应用的数据访问权限:即该用户能够对哪些数据具有哪些访问权限;
下面我们逐一来了解如何实现上述三个方面的权限管理:
1、前台功能权限:
谈到前台功能权限,我们要建立下面几个概念:
岗位:是指用户具体负责的工作分类,如:数据录入岗、文书审批岗、系统维护岗等;
功能:是指用户能够使用的软件功能,可以通过菜单或窗口来控制,但由于一个系统当中窗口通常数据量庞大,控制用户使用哪些窗口不太实际,因此我们通常菜单控制即可;
工号:是指具体用户登录系统所用的用户id;
上述三个概念的相互关系如下:
一个岗位可以对应多个功能菜单;
一个功能菜单同样可以对应多个岗位;
一个工号只能属于一个岗位;
进而我们可以设计以下用户登录流程:
(1)用户id登录系统后读取对应用户表查看其所在岗位;
(2)查找该岗位对应可以使用哪些菜单;
(3)将用户能够使用的菜单和系统实际菜单逐一比较,屏蔽不允许其使用的菜单;
这里面由于涉及到菜单的遍历,需要使用到一些pb的使用技巧,详见另外一篇文章《浅谈如何利用pb实现动态添加菜单》,此处不再赘述。
这样通过上述三者关系,建立起一个用户工号到底能够使用哪些菜单,不能使用哪些菜单。为何要如此复杂,为何不直接定义每个工号能够使用哪些菜单呢?那样的话,显然系统冗余太大,造成资源浪费,不符合规范化要求。
2、后台库表权限:
后台库表权限主要是根据前台工号在后台数据库建立相应的帐号(login)、用户(user),并根据一定的规则产生对应密码,并赋予其不同的角色(role)、不同库表的不同读、写权限,由于这部分与所采用的后台具体数据库密切相关,因此本文不再详述。
3、应用数据权限:
应用数据权限的实现,主要通过各类数据表当中必须引入数据记录的录入或产生单位代码和操作员工号id,当用户访问相应记录时,首先比较当前用户id及其所在单位,是否与数据记录的产生操作员id及其单位代码一致,这个问题说起来简单,但实际用pb语言实现起来需要讲究一定技巧,要充分借助“继承”这一特性,尽量高效、通用。 


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons