码迷,mamicode.com
首页 > 其他好文 > 详细

简单的forms验证

时间:2018-12-21 13:25:34      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:lte   else   custom   访问   attr   string   不用   ret   简单   

public class CustomAuthorzieAttribute : AuthorizeAttribute
{
private string _controllerName = string.Empty;

/// <summary>
/// base.OnAuthorization(filterContext)中会调用AuthorizeCore函数
/// 当AuthorizeCore返回false,则会继续调用HandleUnauthorizedRequest进行处理
/// 所以OnAuthorization是该类的总入口
/// </summary>
/// <param name="filterContext"></param>
public override void OnAuthorization(AuthorizationContext filterContext)
{
//程序过滤器入口处

//获取当前访问页面所属控制器名称
_controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;

base.OnAuthorization(filterContext);
}


/// <summary>
/// base.OnAuthorization来调用
/// </summary>
/// <param name="httpContext"></param>
/// <returns></returns>
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
//登陆界面,允许匿名访问,不用身份认证,直接返回true
if (_controllerName.ToLower() == "login")
{
return true;
}
//获取当前登陆主体标识信息
var dien = httpContext.User.Identity;

//判断,如果验证登陆通过,直接返回true
if (dien.IsAuthenticated)
{
return true;
}
else //否则拒绝访问 false
{
return false;
}
}


// <summary>
/// 当AuthorizeCore返回false时候调用
/// </summary>
/// <param name="filterContext"></param>
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
base.HandleUnauthorizedRequest(filterContext);
}


}

简单的forms验证

标签:lte   else   custom   访问   attr   string   不用   ret   简单   

原文地址:https://www.cnblogs.com/LLC0903/p/10153605.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!