分类:
2008-10-13 16:48:37
通用权限管理模块的设计与实现
作者:
一、简介
最近正在用VC做一个信息管理系统项目,由于涉及多个子系统,权限管理就成为一个共同需要解决的问题,于是做了一个通用权限管理模块,在各子系统中应用良好。
(1)程序登陆框用户验证运行画面如下:
(2)程序用户管理模块运行画面如下:
二、 类说明
做了一个通用权限管理模块功能演示程序,用Rose工具导出类图如下所示:
从类图可以看出,实现通用权限管理模块功能主要从Cdialog基类继承出CloginDlg(用户登陆框)和CpowerDlg(用户权限管理)两个类。
CloginDlg类主要提供系统登陆的用户选择和权限验证,从而做出判断赋予用户相应的系统操作权限。 CpowerDlg类主要负责进行用户管理和权限管理,可以进行用户和相应权限的添加、删除等维护管理功能。
三、实现方法
(1)此模块主要采用ADO数据访问技术,利用ADO接口进行数据访问操作;
(2)各部分代码的具体实现技术细节问题,可在下载实例代码后,仔细查看源码既可(内有详细注释)。
四、应用方式
该通用权限管理模块可以采用多种方式集成到其它应用系统中:
(1)采用源代码集成方式。只需将CLoginDlg类和CPowerDlg类添加到相应系统中进行编译执行即可。
(2)将CLoginDlg类和CPowerDlg类封装成Dll方式,在其它应用系统中灵活调用。
以上两种方式各有优缺点,读者可以根据自己的情况进行应用集成。本人只提供第一种方式应用例子,第二种方式以后再做介绍。
五、其它说明
提供的例程源代码在VC6.0,win2000,Access2000下调试通过。
--------------------next---------------------
这个没有实用价值。 ( maimu 发表于 2006-6-20 16:38:00)
文章写一般。。不过代码风格挺好。有很多东西值得学习 ( mahuixing 发表于 2005-9-28 10:36:00)
他提到的只是最简单的权限解决方法。
但代码例子有一个致命的问题:mdb数据库文件好歹也得加个密码吧,就那么放在那里稍微有点开发常识的人都知道打开数据库文件看密码啦。 ( imhunterliu 发表于 2005-8-30 22:02:00)
权限的关键是数据库的设计,而不是组件!的确如楼上所说,很难抽象成一个通用组件! ( mybios 发表于 2005-8-25 20:00:00)
呵呵,权限是一个很复杂,需求变化也很大的部分,很难把它抽象出来作为一个通用组件。 ( shootingstars 发表于 2005-8-23 12:24:00)
.......................................................
--------------------next---------------------