项目中的权限检查
来源:互联网 发布:java class泛型 编辑:程序博客网 时间:2024/06/02 14:46
我现在要做两个权限,
1.用户登录的时候,判断他是否有权限访问这个页面
2.在可以访问的页面中,点击按钮,判断其是否有此功能按钮的权限。
思路:
1.输入用户名密码<Login.aspx>后,我需要先去数据库中需要判断用户名密码是否存在<User.cs>,如果不存在我就不用判断权限了。
2.新建类文件<PermitCotroller.cs>功能之一是返回功能菜单,在<User.cs>中处理为XML。功能之二是返回可以访问的权限列表存到dataset中,在<User.cs>中放到Session里。
3.<User.cs>类是用于判断用户是否存在的,如果不存在,返回false,若存在,则调用<PermitCotroller.cs>中的方法将准备工作(生成功能菜单XML,处理功能列表为Session)完成。
4.完成准备工作后就可以跳转页面了,跳转页面的时候很关键。需要判断是否有权限访问该页面。
5.新建一个类文件做权限控制器<PermitExecuter.cs>
6.在权限控制器中继承System.Web.UI.Page,并重写Page_Load事件,另一个重要的操作就是,在aspx中,需要继承这个权限控制器<PermitExecuter.cs>,这样的话,每个页面跳转的时候都会先执行这个页面,从而达到权限判断的效果。
7.在权限控制器中还有两个重要的方法,就是本文要处理的两个权限问题,一是页面访问权限检查,一是按钮权限检查。(这些功能均已存放到Session中,所以去Session中查找是否存在就可以了)。
8.Session中数据大致如下:
userID funitemID pagepath
1 1 add.aspx
1 2 update.aspx
9,我建了一个类文件<PermitCommand.cs>用于存用户的所有操作,用于点击某按钮的时候,传参数,判断权限。
public static class PermitCommand
{
public const int AddPersion = 0;
public const int DelPersion = 1;
}
10.OK,所有思路完成,上各类文件代码:
<Login.aspx.cs>
<User.cs>
<PermitController.cs>
<Main.aspx.cs> 访问的页面:
<PermitExecuter.cs>权限控制器:
流程是这样的:
在login.aspx中登录即将跳转Main.aspx,
在User.cs中对该用户进行初步判断,
在跳转Main.aspx中进行页面访问权限检查和按钮权限检查。
<PermitCotroller.cs>权限控制器。
<PermitExecuter.cs>提功User.cs进行准备操作。
<PermitCommand.cs>存按钮的功能ID(常量)
OK!
- 项目中的权限检查
- CI项目设计权限检查
- andorid中的应用权限的检查
- 项目中的权限管理
- 权限检查
- 检查权限
- MyOffice项目中的 "权限分配"
- 项目设计中的角色,权限
- 项目构建中的权限控制
- android 项目中的权限问题
- javaweb项目中的权限控制
- php项目中的RBAC权限
- BDC 权限检查问题
- aop 权限检查
- Android检查权限
- SAP 权限检查
- Android检查权限
- Mysql权限检查原理
- 排序不同长度的数据项
- DCO数字晶振
- SetWindowLong函数 GetWindowLong函数
- Google Analytics IQ Lessons
- form隐藏最大化,显示最小化、关闭+程序界面不能调整大小
- 项目中的权限检查
- myeclipse 9正式版下载地址
- What is REST
- VMWare cloud strategy
- Drupal Internal Server Error 500
- 单片机C语言-程序结构
- Android平台的音乐资源管理与播放
- 写一个Drupal7有关SEO的小模块
- C51-数据存储类型