ASP.NET通用权限验证组件实现
沙发(SF)通用权限验证组件
开篇
本篇介绍通用权限验证的实现代码思路,总共分为导入参数、解析XML、根据XML配置进行处理、返回结果。
代码架构图
1. 类介绍
1.SFWebPermission:实现IHttpModule接口,权限验证入口;
2.SFConfig:导入XML配置类;
3.SFPermission:解析XML配置进行权限验证;
4.SFAccessOper:数据库操作类;
5.SFPermissionSQL:XML节点实体类;
6.SFParameter:XML节点实体类;
7.SFCommon:系统变量定义类;
8.SFConst:系统常量定义类;
9.SFPermission.xml:配置文件,格式上一篇已经介绍。
2. 代码结构
图1
图2
代码的算法实现都是用的最容易想到、最常用的编码方式,语言中比较高级的用法还真没怎么研究过,肯定是不会用啦!
权限验证是通过URL查询得到主键判断的,所以权限项目(菜单)表中要有URL列,建议是另外添加一张对应表,以为一个权限项有可能需要对应多个URL请求。
使用此组件不需要对原项目做任何的代码修改。
代码是在.net2.0框架下开发的,需要考到网站的bin目录下;
在Web.config的<system.web>节点下面添加
<httpModules>
<add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/>
</httpModules>
如果这样添加出错的话,那就<system.webServer>节点下面添加
<modules>
<add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/>
</modules>
DLL下载地址:http://files.cnblogs.com/shangfeng/%E6%B2%99%E5%8F%91%28SF%29%E9%80%9A%E7%94%A8%E6%9D%83%E9%99%90%E9%AA%8C%E8%AF%81%E7%BB%84%E4%BB%B6.rar
ASP.NET通用权限验证组件实现的更多相关文章
- ASP.NET通用权限组件思路设计
开篇 做任何系统都离不开和绕不过权限的控制,尤其是B/S系统工作原理的特殊性使得权限控制起来更为繁琐,所以就在想是否可以利用IIS的工作原理,在IIS处理客户端请求的某个入口或出口通过判断URL来达到 ...
- ASP.NET通用权限组件实现一
沙发(SF)通用权限验证组件 开篇 上一篇提到了通用权限的设计思路,根据设计思路一步一步的来实现一个相对通用的权限验证组件.在VS2010下用C#语言基于.net framework2.0框架实现具体 ...
- asp.net mvc 模型验证组件——FluentValidation
asp.net mvc 模型验证组件——FluentValidation 示例 using FluentValidation; public class CustomerValidator: Abst ...
- ASP.NET通用权限系统快速开发框架
系统在线演示地址: http://120.90.2.126:8051 登录账户:system,密码:system### DEMO下载地址: http://download.csdn.net/detai ...
- ASP.NET MVC4 权限验证
在ASP.NET MVC4 中继承ActionFilterAttribute 类,重写OnActionExecuting方法 /// <summary> /// 权限拦截 /// < ...
- ASP.NET MVC权限验证 封装类
写该权限类主要目地 为了让权限配置更加的灵活,可以根据SQL.json.或者XML的方式来动态进行页面的访问控制,以及没有权限的相关跳转. 使用步骤 1.要建一个全局过滤器 //受权过滤器 publi ...
- 容器扩展属性 IExtenderProvider 实现WinForm通用数据验证组件
大家对如下的Tip组件使用应该不陌生,要想让窗体上的控件使用ToolTip功能,只需要拖动一个ToolTip组件到窗口,所有的控件就可以使用该功能,做信息提示. 本博文要记录的,就是通过容器扩展属性 ...
- 【ASP.NET】ASP.NET中权限验证使用OnAuthorization实现
在项目开发中,通常我们都会涉及到用户登录才能访问的网页,比如购物网站,我们浏览商品,添加购物车(以前开发的时候在这里就需要登录用户,但是现在有了缓存的实现,这里可以将商品加入缓存,等到结账的时候再登录 ...
- ASP.NET通用权限框架 权限管理系统源码jquery 精美UI源码
软件技术开发,合作请联系QQ:858-048-581 开发工具 VS2010 .sql2005.2008等(在Sql server数据执行脚本即可) VS2010 打开保证本地运行成功(数据库.源代 ...
随机推荐
- OMX Codec详细解析
概述 OMX Codec是stagefrightplayer中负责解码的模块. 由于遵循openmax接口规范,因此结构稍微有点负责,这里就依照awesomeplayer中的调用顺序来介绍. 主要分如 ...
- SELECT TOP column FROM table [ORDER BY column [DESC]]
如果想返问表中行的子集,仅需要返回特定数量的记录,而不管符合条件的行有多少.要返回排在前面的值,可以有两个选择:指定固定数量的行,或者指定总行数的百分比.SQL Server不对这些数据做任何分析,共 ...
- java静态成员的初始化过程
public class Price{ final static Price INSTANCE = new Price(2.8); static double initPrice = 20; doub ...
- 使用xml及java代码混合的方式来设置图形界面
参考<疯狂android讲义>第2版2.1节 设置android的图形界面有三种方法: 1.使用纯xml文件 2.使用纯java,代码臃肿复杂,不建议使用 3.使用xml与java混合,前 ...
- 函数内声明变量不加var和加var的区别
这段代码说明了在函数中声明没加var关键字的变量时,会出现什么结果. 分两种不同的情况: 1.如果函数内没有同名的局部变量覆盖“无var变量”,那么它就是个全局变量,在函数外部也可以访问到 ...
- node.js 环境搭建
一 官网下载安装包 : 1.http://www.nodejs.org/download/ 选择相应的包进行安装 2.安装express : npm install -g express -gener ...
- where和having的区别
1.用的地方不一样 where可以用在select update delete insert......into语句中 having只能用在select语句中 2.执行顺序不一样 where的搜索条 ...
- 前端MVVM学习之KnockOut(一)
MVVM理解 MVVM即Model-View-viewModel,是微软WPF和MVP(Model-View-Presenter)结合发展演变过来的一种新型架构框架. MVVM设计模式有以下优点: ( ...
- Keil C51 与 ARM 并存的方法
很多朋友都在想,怎么让keil C51与ARM能够并存使用.有安装经验的朋友都知道,安好C51后再安ARm,C51不能正常工作:安好ARM后再安C51,ARM不能正常工作. 网上也有相关解决办法,不过 ...
- ***.M51文件详细注释
;说明:这是1950编译后生成的Keil_1910.M51文件,以此为例来讲解M51文件 // :: PAGE BL51 BANKED LINKER/LOCATER V6., INVOKED BY: ...