ASP.NET防止跳过登录页面

 我们的网站某些功能可能需要用户登录后才能访问,但是有些用户可能记录下了访问后的页面的地址,可能下次想试试直接用这些地址来跳过登录页面的限制!一旦成功,则暴露出很多漏洞,我们为了防止这样的事情发生,采取下面的方法来保护。

Webconfig文件配置: 

<authentication mode="Forms"><forms loginUrl="Logon/Logon.aspx"></forms></authentication>
   

 <!--  授权
           此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
          应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
          (未经身份验证的)用户。
    -->

    <authorization>
        <deny users="?" /> <!-- 允许所有用户 -->
            <!--  <allow     users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
                  <deny      users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
            -->
    </authorization>

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   
  <system.web>

  

    <authorization>
        <allow users="*" /> <!-- 允许所有用户 -->
            <!--  <allow     users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
                  <deny      users="[逗号分隔的用户列表]"
                             roles="[逗号分隔的角色列表]"/>
            -->
    </authorization>

    <!--  应用程序级别跟踪记录
          应用程序级别跟踪为应用程序中的每一页启用跟踪日志输出。
          设置 trace enabled="true" 可以启用应用程序跟踪记录。如果 pageOutput="true",则
          在每一页的底部显示跟踪信息。否则,可以通过浏览 Web 应用程序
           根目录中的 "trace.axd" 页来查看
          应用程序跟踪日志。
    -->
 </system.web>

</configuration>


cs文件代码:
using System.Web.Security;
 Response.Redirect("http://localhost/ChinaModelWeb/Main.aspx");
 FormsAuthentication.SignOut();
 Response.Redirect("Logon//Logon.aspx");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值