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;下.









然后在<system.web>节点中加上










FormsAuthentication.RedirectFromLoginPage(this.txtName.Text.ToString(),true);
这句代码就是判断时候用Form表单验证的方法,从而调用Web.Config里面的配置,使页面重定向,还有,在注销的时候,或者用户离开的时候加上以下代码:
FormsAuthentication.SignOut();//移除用户的身份,这样就可以实现用户步登录始终停留在登录页面,登录后可以浏览其他网页,注销后又返回未登录状态 FormsAuthentication 在命名空间using System.Web.Security;下.