• 分散验证


    介绍一下分散管理的方式,即通过多个web.config来配置文件的访问权限。

    首先,web.config的作用我们应该知道两点:

    1、web.config的设置将作用于所在目录及所在目录下的所有子文件下的资源——一般指.net资源,如aspx、ashx、ascx等文件,对.html、js、css等则不起作用,当然,不同的iis版本下有所不同,在此不做讨论。

    2、子目录下的web.config文件将覆盖从父目录继承下来的设置。

    接下来,我们新建一个测试项目,项目资源如下图:

     上图中的Admin文件夹是受保护的,只有通过省份验证的用户可以访问,所以,我们在根目录下的web.config配置文件中做如下配置:

        <authentication mode="Forms"><!--Forms验证-->
          <forms loginUrl="~/Admin/Login.aspx" name=".ASPX"></forms><!--未通过则转向Login.aspx登录页-->
        </authentication>
        <authorization><!--授权:对于此目录及此目录以下的所有资源-->
          <allow users="*"/><!--允许所有用户访问-->
        </authorization>

    上面配置的信息是,根目录及根目录下的所有资源允许匿名用户访问,这显然不符合我们的要求,但是,我们根据上面2点认知中的第2点知道,可以通过重写web.config配置来覆盖父目录提供的规则,因此,我们可以在Admin文件夹中新建一个web.config文件来配置Admin文件夹的访问授权规则,如下:

    <configuration>
      <system.web>
        <authorization><!--授权-->
          <deny users="?"/><!--阻止匿名用户访问-->
        </authorization>
      </system.web>
    </configuration>

    如此以下,我们就通过“分散管理”的方式配置好了项目的访问规则。

  • 相关阅读:
    css属性设置
    自由从摇篮开始 ——杨支柱
    提醒幸福
    随记
    那些回不去的年少时光(桐华)
    Javascript 与正则表达式
    XmlHttpRequest对象的获取及相关操作
    CSS的4种引入方式及优先级
    c#textBox控件限制只允许输入数字及小数点,是否为空
    c# 循环界面控件
  • 原文地址:https://www.cnblogs.com/Harry369/p/3106020.html
Copyright © 2020-2023  润新知