Asp.Net 下的权限管理
来源:互联网 发布:浩辰软件 编辑:程序博客网 时间:2024/06/07 10:57
Asp.Net 下的权限管理
(2013-01-05 08:05:31)权限管理
it
分类: 软件开发一、需求分析:
1、
一般的管理系统界面,即页面分为三个部分,上部是有关公司的图片信息,左边是树形菜单,左边是具体菜单对应的页面。
2、
1》、大权限:即控制不同角色用户看到不同的树形菜单,只能看到与该用户角色对
2》、小权限:即使某几种角色的拥有相同的左菜单权限。但是根据具体的角色再细
二、数据库设计:
根据以上要求,开始数据库设计,需要五个表:用户表、菜单树表、角色菜单表、页面表和子页面表
1、
色,或者是用户类型
2、
其中PageName列就是菜单对应的页面对应的类的名字,也就是页面类名
3、
该表记录了不同的用户类型对应的不同的菜单和菜单连接页面的增删改查权限,以后将根据该表来决定用户的权限。页面上的增删改查按钮的Enable属性将与这里的表值对应
4、
页面表
子页面表
三、代码设计与关键代码实现:
根据以上需求和数据库信息来实现系统架构设计。
1、做菜单控制比较简单,仅仅根据sql语句选择不同角色对应的不同树而已。
2、控制Session人性化。由于我们不能将session过时的异常信息直接呈现给客户,弄的客户一头雾水,不知所措。我们需要给客户人性化的
1》
页面的时候都需要判断,很麻烦,也容易忘记,尤其是公司一个团队开发的时候,某个程序员难免会忘记,以造成麻烦。
2》
也就是我让每个页面都继承一个BasePage类,而该类继承System.Web.UI.Page。该类需要重写基类的这个方法protected
3、
这里进行,并且在session没有过时的情况下(道理很简单,不再多说)。
1》、我们需要一个权限管理的类UserPrivilege。这个类有一个静态字段private
2》、已经基本准备好,但是这时候OnLoad方法里应该怎样做呢?这里要介绍一个技巧,就是怎样在获得派生类的名字呢?其实也很简单,就是利用this.GetType().Name
3》、我们如何把这个权限传递给具体的页面,这时候我们需要在基类中定义一个受保护的抽象方法protectedabstract
以上是一个思路,和一些关键代码,但没有详细代码,如果需要请email给我,但是现在我给大家一张图片,也许会更清晰一点
权限修改页面
该登录用户没有里面的添加权限
该用户没有添加和删除权限
- 含“”的博文
- 含“”的博主
- 含“”的音乐
- 含“”的视频
- Qing
- 博客
- 转载原文
- 采编
- 长微博
- Asp.Net 下的权限管理
- Asp.Net 下的权限管理
- asp.net权限管理
- asp.net mvc的权限管理设计
- [NET]浅谈ASP.NET的权限管理和用户验证
- asp.net中的权限管理
- ASP.NET访问权限管理
- ASP.NET访问权限管理
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证(转)
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证
- 浅谈ASP.NET的权限管理和用户验证[转]
- ASP.NET MVC 基于页面的权限管理
- ASP.net Membership角色与权限管理
- java 编码URL中的空格,中文
- 【转载】【权限控制】角色访问动态生成用户权限菜单树
- android :paddingbottom 与android:layout_marginBottom区别
- Ecshop 编辑器 FCKeditor更换为Kindeditor 完整替换
- SWAP的罪与罚及NUMA的诅咒
- Asp.Net 下的权限管理
- 数据库备份
- Android Jni调用浅述
- 底部菜单栏 Fragment+FragmentTabHost实现仿新浪微博底部菜单栏
- socket的阻塞与非阻塞
- 如何在不关闭监听的情况下move 或 purge listener.log
- Content-Type: application/vnd.ms-excel
- Android之Service发BroadCastReceiver小结
- Source Insight建工程之Uboot