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 打开保证本地运行成功(数据库.源代 ...
随机推荐
- Javascript进阶篇——浏览器对象—Location、Navigator、userAgent、screen对象
Location对象location用于获取或设置窗体的URL,并且可以用于解析URL.语法: location.[属性|方法] location对象属性图示: location 对象属性: loca ...
- javascript无缝流畅动画轮播,终于让我给搞出来了。
自己一直想写一个真正能用的轮播图,以前是写过一个,但是不是无缝的轮播,感觉体验很差,这个轮播之前也搞了很多实例,看了很多代码,但是脑子总转不过弯,为什么在运动到一定距离后可以突然转回到原始位置,而没有 ...
- .net程序员转战android第三篇---登录模块之静态登录
这一篇我将分2个部分记录登录界面,第一部分是静态登录, 这部分将如何从界面布局.控件使用.文件关系.数据验证.登陆实现等5小块记录. 第二部分是动态登录,这块会基于上面的4小块,在数据验证不是静态数据 ...
- 使用react-native做一个简单的应用-06商品界面的实现
商品界面实现起来很简单,其实就是一个listview的使用: 关于listview的使用,在官方文档里面已经介绍的很详细了.在这里我要提一个坑. listview在Android和iOS中的效果是不一 ...
- shell参数
shell获取当前执行脚本的路径 filepath=$(cd "$(dirname "$0")"; pwd) 脚本文件的绝对路径存在了环境变量filepath中 ...
- C# 广播TS流精确计时发送
广播传输相关的项目,需求是UDP发送TS到IP/ASI网关,网关经过ASI输出到激励器,再由激励器通过射频天线输出,接收端为终端机顶盒. 因为以前没有怎么接触过广播相关的东西,一开始认为用C#写个UD ...
- Struts2 标签库详解2
Struts2标签库 包括: OGNL Struts2标签分类 控制标签 :(if, elseif,else, iterator, append, merge, generator, subset, ...
- Unity-碰撞
固定位置和角度 选择项目视图中的 Prefab. 打开检视面板中的 Rigidbody 标签可以看到 Constraints 项. 点击左边的三角形图标, 下面会进一步显示 Freeze Positi ...
- uva 12100 Printer Queue
The only printer in the computer science students' union is experiencing an extremely heavy workload ...
- (转) Eclipse - Python - Installation of PyDev with a Python Hello World tutorial
Once you finished your installation of Python on your Windows OS, GNU/Linux or Mac OS, let me tell ...