汗,居然2年的文章还被人挖出来,还有人骂我是一砣史…… 居然没有看到我在其他文章提供了下载,无语。

在这里贴出下载地址:

http://www.cnblogs.com/Wenzy/archive/2007/10/16/926391.html


Asp.net MemberShip 在Vs2005中给用户带来了很大的便利,网络上也有不少讨论如何使用Membership的文章。但是功能太少,如果真正用于开发项目的话,是不够用的。目前Role Base Access Control 思想是权限控制比较流行的,所以我开发了一个基于RBAC思想的Asp.net 2.0下面的通用用户权限管理框架RBAC membership framework (RMF)。
本程序可以应用于开发Asp.net 2.0的Web应用程序,数据库使用Sql2005,要过渡到其他版本也很容易。
开发原则和目的:
1、不重写系统提供的MembershipProvider,只是进行扩展,以保证没有RMF的应用程序很快的能够附加上这个框架。
2、以最方便的形式提供权限控制功能。
3、提供一个用户注册、管理的Web后台,省去每次开发系统都要写用户管理的代码的工作,(不过美工还是要做地)。
4、Web界面采用Atlas技术。

使用步骤:
1、采用配置工具,把系统的资源和所具备的操作配置好,如下图所示。
配置工具

2、生成代码文件Privilege.cs,里面包含所有权限的枚举定义,加入到开发的网站内

这样就可以用到Vs2005的智能感应功能,如下图所示。


3、在前台的Web界面,选择每个角色对应的权限

4、然后给用户指定角色:

5、最后在代码里这样写:

 PageBase.GetPrivilege(SysResources.所有资源.系统配置.EmailNeed.Check)

这样就可以判断出当前登录的用户,对于系统配置里面的EmailNeed具有Check的权限。PageBase是系统提供的一个类,用于判断权限,PageBase会自动获取系统当前的登陆用户。Asp.net 内置的Membership所有功能可以照常使用,不受影响。

数据库结构如下:
 
希望大家能够提一下意见,Wenzy@tom.com,谢谢

posted on 2006-09-19 10:06  Wenzy  阅读(24869)  评论(189编辑  收藏  举报