ASP.NET 实现登陆验证
public class ValidModule : IHttpModule
{
/// <summary>
/// 您将需要在网站的 Web.config 文件中配置此模块
/// 并向 IIS 注册它,然后才能使用它。有关详细信息,
/// 请参见下面的链接: http://go.microsoft.com/?linkid=8101007
/// </summary>
#region IHttpModule Members public void Dispose()
{
//此处放置清除代码。
} public void Init(HttpApplication context)
{
try
{
context.AcquireRequestState += new EventHandler(OnLoginRequest);
}
catch
{ }
} #endregion public void OnLoginRequest(Object source, EventArgs e)
{ HttpApplication application = (HttpApplication)source;
if (application.Context.Session!=null && application.Context.Session["Loginer"] == null)
{
string requestUrl = application.Request.Url.ToString();
string requestPage = requestUrl.Substring(requestUrl.LastIndexOf('/') + );
if (!requestPage.Contains("Login.aspx"))
{
application.Response.Redirect("~/Login.aspx");
}
}
}
}
有两点说明:
1.Session在这个事件阶段存在 context.AcquireRequestState += new EventHandler(OnLoginRequest);
2. if (application.Context.Session!=null && application.Context.Session["Loginer"] == null)判断,原先JS、CSS都被过滤掉了,有时还会有
‘未将对象引用到实例’,找了半天,加了第一个判断。这个验证还不周全,还应该有登陆后验证,防止登陆用户访问非法页面。
想来无心一笔,后觉惊鸿一笔。O(∩_∩)O,代码呀,呵呵。
ASP.NET 实现登陆验证的更多相关文章
- ASP.NET MVC 自己实现登陆验证过滤器
		1.首先添加一个过滤器类,并实现接口中对应的方法 public class YLFAuthorizeAttribute : FilterAttribute, IAuthorizationFilter ... 
- asp.net 在AcquireRequestState事件中判断登陆验证。
		Global中添加AcquireRequestState事件. protected void Application_AcquireRequestState(object sender, EventA ... 
- 【MVC】ASP.NET MVC Forms验证机制
		http://www.cnblogs.com/bomo/p/3309766.html 随笔 - 121 文章 - 0 评论 - 92 [MVC]ASP.NET MVC Forms验证机制 ASP. ... 
- ASP.NET MVC 随想录——探索ASP.NET Identity 身份验证和基于角色的授权,中级篇
		在前一篇文章中,我介绍了ASP.NET Identity 基本API的运用并创建了若干用户账号.那么在本篇文章中,我将继续ASP.NET Identity 之旅,向您展示如何运用ASP.NET Ide ... 
- Java的登陆验证问题
		java中的登陆验证问题可以有多种方式进行验证,通过拦截器功能完成,可以通过过滤器功能完成,也可以简单的代码在JSP页面中单独完成,其中都 涉及到一个关键的验证步骤,这个验证原理ASP,PHP,JAV ... 
- ASP.NET Identity 身份验证和基于角色的授权
		ASP.NET Identity 身份验证和基于角色的授权 阅读目录 探索身份验证与授权 使用ASP.NET Identity 身份验证 使用角色进行授权 初始化数据,Seeding 数据库 小结 在 ... 
- ASP.NET MVC编程——验证、授权与安全
		1 验证 一般采用表单验证完成登陆验证,建议结合SSL使用.为限制控制器只能执行HTTPS,使用RequireHttpsAttribute 2 授权 对账户的权限的控制可以通过在控制器或控制器操作上 ... 
- Asp.Net的Forms验证,解决Cookie和Seesion失效时间
		网站开发中用户验证一般采用Asp.Net的Forms验证,验证票据存储到Cookie的方式. Session方式是将验证信息存储在内存中,如果你使用的虚拟主机给你分配很小的内存,实际上都是如此,那么s ... 
- 2016-02-20WebForm登陆验证,判断用户是否登陆 PageBase类
		http://blog.csdn.net/fanbin168/article/details/49404233 很多时候,WebFrom页面,我们需要判断用户是否已经登陆了.假如有很多页面,难道我们要 ... 
随机推荐
- [Django]网页中利用ajax实现批量导入数据功能
			url.py代码: url(r'^workimport/$', 'keywork.views.import_keywork', name='import_keywork') view.py代码: fr ... 
- MongoDB学习笔记(一:常见问题汇总)
			一.安装时出现The default storage engine 'wiredTiger' is not available问题解决 今晚在自己老式笔记本来试了一下MongoDB的安装,由于配置比较 ... 
- WPF -Enum的三种绑定方法
			一.使用ObjectDataProvider <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentat ... 
- Workerman-文件监控-牛刀小试
			今天学习了workerman , 初次体验了定时器的效果,结合文档.弄了个文件监控. 好了 废话不多说 直接上代码 use Workerman\Worker; require_once __DIR__ ... 
- 【2016-10-28】【坚持学习】【Day15】【Oracle】【变量 定义 使用】
			declare i integer ; j ; begin i :; dbms_output.put_line(j); end 
- 最小生成树 kruskal算法  codevs 1638 修复公路
			1638 修复公路 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description A地区在地震过后,连接所有村庄的公 ... 
- .Net的内置对象之一 Request
			一.Request简介 Request对象是.net的内置对象之一,也是.net中常用的对象,用于获取客户端的信息,可以使用Request对象访问任何基于HTTP请求传递的所有信息.通过Request ... 
- CSS背景图像位置属性background-position百分比详解
			百分比值同关键字很接近,但其操作方式不一样.用百分比值来居中一幅背景图像,也很简单: body { background-image;url(beijing.gif); background-repe ... 
- ical4j 实现ICS文件的生成和解析
			iCalendar 简介 iCalendar,简称"iCal",是"日历数据交换"的标准(RFC 2445),该标准提供了一种公共的数据格式用于存储关于日历方面 ... 
- Javascript读写文件
			<script type="text/javascript" language="javascript"> //读文件 function readF ... 
