zoukankan      html  css  js  c++  java
  • 一种简单方便的权限控制方案

    所有的页面都继承于一个基页面,这个基类中的load事件用于判断权限:

        Protected pageAccess As String

        
    Private Sub Page_Load(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Load
            
    If (pageAccess Is NothingThen
                
    Throw New ApplicationException("该页面没有设置访问权限,请与管理员联系!")
            
    ElseIf (pageAccess = "User"Then
                
    If (Session("UserPower"= "Guest"Then
                    
    '处理登录
                    Response.Redirect("/User/User_Login.aspx?type=1")
                
    End If
            
    ElseIf (pageAccess = "PowerUser"Then
                
    If (Session("UserPower"= "Guest" OrElse Session("UserPower"= "User"Then
                    Response.
    Write("需要管理员,权限不够!")
                    Response.
    End()
                
    End If
            
    ElseIf (pageAccess = "Admin"Then
                
    If (Not isAdmin()) Then
                    Response.
    Write("需要超级管理员,权限不够!")
                    Response.
    End()
                
    End If
            
    ElseIf (pageAccess <> "Guest"Then
                
    Throw New ApplicationException("该页面访问权限设置错误,请与管理员联系!")
            
    End If
        
    End Sub


    所有继承的页面new函数中写:

        Public Sub New()
            pageAccess 
    = "Guest"
        End Sub

    此处写上guest,则该页面所有人都能访问,若写上基类页面中处理的其它字符串,则可以控制页面访问权限了。这个方法使用起来比较简单,新建页面只有两个地方需要修改,一个是继承的父类,一个是new当中加入给pageAccess赋值的语句。

    ---------------------------

    http://www.cnblogs.com/squirrel_sc

    1. 如有引用,请包含本段文字及原始出处。以表示对作者的尊重,且能将有相似想法的人联系起来。

    2. 如无特殊说明,本文的文字代表作者的观点和想法。由于人类的记忆和连通性的限制,可能会将别人的观点和想法当成自己的(会尽量避免,但我读书少,别蒙我:D);或有人会有同样的想法(那就太好了)。若有此类情况,请联系我。我会很高兴更新内容。

    3. 每篇文章会根据反馈或新的想法,随时更新。我会尽量记得更新版本号。

  • 相关阅读:
    汤姆猫解决打印日志乱码问题
    oracel如何将timestamp转化为date类型
    oracle排序分页
    批量删除某一后缀的临时表
    oracle分组排序后获取每组行号
    cxf中隐藏服务列表
    怎么从一张表中查询数据插入到另一张表中
    weblogic创建域
    java多线程
    Linux常用命令大全
  • 原文地址:https://www.cnblogs.com/squirrel_sc/p/47825.html
Copyright © 2011-2022 走看看