权限管理页面控制
我们知道对于权限管理这块,采取的思想就是RBAC
每个用户对应一个角色,我们只需要对这个角色进行分配相应的权限即可,也就是给这个用户分配了权限,这样管理起来很方便,设计也很简答,大概就是用户表,角色表,模块表,在加上一个角色与模块对应的表就可以了,然后根据不同的用户权限,显示相应的模块或者提示没有权限访问,这里要说的就是,对每个页面的访问权限,如果都写的话,这么多的页面是个很大的工作量,类似判断用户是否登录一样,在asp.net中我们完全可以使用Forms验证来代替使用session每个页面都要判断的做法,同样,在这里我们也可以通过HttpModule来直接过滤掉没有访问权限的页面,方便多了,我们知道HttpModule可以再服务器端接收处理之前进行相关的过滤,这点给我们提供很大的方便,我们完全可以利用它的这一点,具体的来看看下:
View Code
public class CheckUserModule : IHttpModule
{
private static string loginPage = "login.aspx";
#region IHttpModule Members
public void Dispose()
{
//此处放置清除代码。
}
public void Init(HttpApplication context)
{
context.AcquireRequestState += new EventHandler(checkUserRight);
}
/// <summary>
/// 检测用户权限
/// </summary>
void checkUserRight(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)sender; // 获取应用程序
string url = HttpContext.Current.Request.Url.ToString(); // 获取Url
int start=url.LastIndexOf('/') + 1; //查找URL中最后一个/的位置
int end=url.IndexOf('?',start); //查找URL中?位置
相关新闻>>
- 发表评论
-
- 最新评论 更多>>
今日头条
更多>>您可能感兴趣的文章
- 利用C++Builder 开发Web Service应用——基于Web Service技术的
- 在ASP.net 中从sqlserver检索(retrieve)图片
- ADO.NET的记忆碎片(四)
- asp.net 使用System.Net.Mail 发送邮件的实现代码
- 关于ASP.NET网站部署 --- "aspnet_client"文
- ASP.NET MVC 与 WebForm 三层架构 区
- asp.net Execl的添加,更新操作实现代码
- 在ASP.NET环境下解决类文件的智能提示问题
- MVC3+Entity Framework 实现投票系统(一)
- 最简单的Web服务器事例分析