一套.net窗体身份验证方案(解决了防止用户重复登陆,session超时等问题)
日期:2007年4月28日 作者: 查看:[
大字体 中字体
小字体]
-
-
一. 设置web.config相关选项
先启用窗体身份验证和默认登陆页,如下。
<authentication mode="Forms">
<forms loginUrl="default.aspx"></forms>
</authentication>
设置网浏览可以匿名访问,如下
<authorization>
<allow users="*" />
</authorization>
然后设置跟目录下的admin目录拒绝匿名登陆,如下。注意这个小节在System.Web小节下面。
<location path="admin">
<system.web>
<authorization>
<deny users="?"></deny>
</authorization>
</system.web>
</location>
把http请求和发送的编码设置成GB2312,否则在取查询字符串的时候会有问题,如下。
<globalization requestEncoding="gb2312" responseEncoding="gb2312" />
设置session超时时间为1分钟,并启用cookieless,如下。
<sessionState mode="InProc" cookieless="true" timeout="1" />
为了启用页面跟踪,我们先启用每一页的trace,以便我们方便的调试,如下。
<trace enabled="true" requestLimit="1000" pageOutput="true" traceMode="SortByTime" localOnly="true" />
二. 设置Global.asax文件
处理Application_Start方法,实例化一个哈西表,然后保存在Cache里
protected void Application_Start(Object sender, EventArgs e)
{
Hashtable h=new Hashtable();
Context.Cache.Insert("online",h);
}
在Session_End方法里调用LogoutCache()方法,方法源码如下
/// <summary>
/// 清除Cache里当前的用户,主要在Global.asax的Session_End方法和用户注销的方法里调用 /// </summary>
- [1] [2] [3] [4] [5] [6] [7] 下一页
-
- 一套.net窗体身份验证方案(解决了防止用户重复登陆,session超时等问题) 相关文章:
- 一套.net窗体身份验证方案(解决了防止用户重复登陆,session超时等问题) 相关软件
上一篇:概述IIS6.0默认设置安全性的改变
下一篇:用Windows 2003实现软RAID
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com