输入非登录页面,转到登录页面,阻止用户不登录而访问其他页面【原创】

如果您有任何意见,请留下您宝贵的意见以便告知
操作环境:Visual Studio.Net2003
操作系统:window Xp SP2


具体代码如下:

1。修改Web.Config:Visual Studio.Net2003 默认的是window身份的验证,首先将它修改为Form表单验证,删除原有的代码
<authorization>
        
<allow users="*"/> <!-- 允许所有用户 -->
            
<!--  <allow     users="[逗号分隔的用户列表]"
                             roles
="[逗号分隔的角色列表]"/>
                  
<deny      users="[逗号分隔的用户列表]"
                             roles
="[逗号分隔的角色列表]"/>
            
-->
 
</authorization>
和代码:
 <authentication mode="Windows" />  



然后在<system.web> 节点中加上
< authentication   mode = " Forms " >      
            
< forms   name = " .aaa "  protection = " All "  path = " / "  timeout = " 30 "   loginUrl = " /Login.aspx " />    
</ authentication >    
<!--      授权此节设置应用程序的授权策略。可以允许或拒绝用户或角色访问   
                应用程序资源。通配符:
" * "    表示任何人, " ? "    表示匿名     
                (未授权的)用户。   
-->    
< authorization >    
        
< deny   users = " ? " />
</ authorization >
有关参数,可以参见MSDN, "loginUrl"就是导航的页面,做到这步,你会发现,首次运行的时候您会发现没有任何的问题,注销用户返回登录页面的时候,再次在地址栏中输入其他的页面,又可以访问,这是问题的关键之处,这就需要你对登录进行操作了,在对用户名进行判断的时候加上一句代码
FormsAuthentication.RedirectFromLoginPage(this.txtName.Text.ToString(),true);
这句代码就是判断时候用Form表单验证的方法,从而调用Web.Config里面的配置,使页面重定向,还有,在注销的时候,或者用户离开的时候加上以下代码:
FormsAuthentication.SignOut();//移除用户的身份,这样就可以实现用户步登录始终停留在登录页面,登录后可以浏览其他网页,注销后又返回未登录状态 FormsAuthentication 在命名空间using System.Web.Security;下.
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值