zoukankan      html  css  js  c++  java
  • 使用HttpModule实现权限系统

      开发系统的时候,应用系统的权限控制是非常重要的一个部分。在Asp中,要实现权限的控制是比较麻烦的事件,因为我们必须要在每个需要控制权限的Asp页面添加权限控制代码,从而控制客户对页面的访问。这样带来的问题,除了编写大量的重复代码外,由于权限控制部分同业务处理部分的模块紧密耦合在一些,对权限控制模块的修改,往往又会带来大量的修改工作,甚至造成大量的Bug。

      所以,我们现在需要将权限控制和业务处理模块进行解耦,使得两个部分可以独立开发和修改,而不会相互影响,或者,将影响减到最低。在Asp.net中,我们可以使用HttpModule实现。

    public class RightChecker
    {
        public static bool HasRight(User user,Module module)
        {
            //进行权限验证
        }
    }
    public MyModule:IHttpModule
    {
        public void Init(HttpApplication application)
        {
            application.AcquireRequestState+= new EventHandler(this.Application_AcquireRequestState);
        }
        public void Application_AcquireRequestState(Object source,EventArgs e)
        {
            HttpApplication application=(HttpApplication)source;
            User user = application.Context.Session["User"];//获取User
            string url = application.Context.Request.Path;//获取用户访问的页面
            Module module = //根据Url得到所有模块
            if()
            {
                application.Context.Server.Transfer("Error.aspx");
            }
        }
        public void Dispose()
        {}
    }
  • 相关阅读:
    连分数法解佩尔方程特解
    hdu2281&&POJ1320——Pell方程
    Gym
    代入法求递推式
    nodemcu固件的烧录及lua开发
    ESP8266MOD、刷可以使用AT指令的固件、作为客户端向贝壳云端发送固定数据
    Quick Start NodeMCU / ESP8266 12E
    CF388C&&2018EC Final D题——博弈&&水题
    使用cookie登录网盘账号
    Spring的Bean之Bean的基本概念
  • 原文地址:https://www.cnblogs.com/AngelLee2009/p/2219760.html
Copyright © 2011-2022 走看看