• ASP.NET通过配置webconfig实现某个文件夹禁止匿名访问
  • 发布于 1周前
  • 27 热度
    1 评论
  • 李宏荣
  • 0 粉丝 35 篇博客
  •   

我们在用ASP.NET开发系统的时候经常会遇到这样的情况:系统里面有些内容安全性比较高,不允许用户进行匿名访问,有些内容又要开放给用户匿名访问,那像这种情况要怎么办?最土的办法当然就是对文件夹内的每个页面都进行安全验证,如果页面只有一两个,这也是一种方法,但是当文件夹内的内容很多的时候显然是不可能用这种方式的,比如我有如下这样一个系统:我要控制main文件夹内的内容不允许匿名访问,这个要怎么实现呢?其实很简单,只要在webconfig里文件配置一下就可以了!

具体实现方式:

1.网站的根目录下的web.config文件的system.web节点后面加入加入如下一段话:

  <system.web>
    <authentication mode="Forms">
      <forms loginUrl="~/Login.aspx" timeout="2880"/>
    </authentication>
    <authorization>
      <!--设置为允许所有用户访问-->
      <allow users="*"/>
    </authorization>
</system.web>
2.在要禁止匿名访问的main文件夹下添加一个web.config文件,里面加入如下一段话就可以了

<?xml version="1.0"?>
<configuration>
    <system.web>
      <authorization>
        <!--阻止匿名用户访问-->
        <deny users="?"/>
      </authorization>
    </system.web>
</configuration>
现在你去访问main文件夹里的文件,如果你没登陆的话,系统就会自动转跳到前面的web.config里配置的默认登陆页面了,怎么样,是不是很简单?


用户评论