你的位置:首页 > ASP.net教程

[ASP.net教程]mvc 自定义 AuthorizeAttribute 验证逻辑


public class AuthorizationFilterAttribute : AuthorizeAttribute  {    Dictionary<string, string> roles = new Dictionary<string, string>() {     {"1","/Home/Index"},    {"2",""},    };    /// <summary>    /// 自定义验证逻辑 返回false时 才会执行HandleUnauthorizedRequest    /// </summary>    /// <param name="httpContext"></param>    /// <returns></returns>    protected override bool AuthorizeCore(HttpContextBase httpContext)    {      var id = Convert.ToString(httpContext.Request.QueryString["id"]);      if (id == null || !roles.ContainsKey(id))        return false;      string controller = Convert.ToString(httpContext.Request.RequestContext.RouteData.Values["controller"]);      string action = Convert.ToString(httpContext.Request.RequestContext.RouteData.Values["action"]);      return string.Compare(roles[id], string.Format("/{0}/{1}", controller, action), true) == 0;    }    public override void OnAuthorization(AuthorizationContext filterContext)    {      base.OnAuthorization(filterContext);    }    protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)    {      UrlHelper url = new UrlHelper(filterContext.HttpContext.Request.RequestContext);      filterContext.HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;      filterContext.Result = new RedirectResult(url.Action("login", "home"));    }  }

 

public static void RegisterGlobalFilters(GlobalFilterCollection filters)    {      filters.Add(new AuthorizationFilterAttribute());      filters.Add(new HandleErrorAttribute());    }

  

filterContext.Result只要不为空Action就会终止。直接响应请求。



什么时候去沙巴旅游最便宜去沙巴旅游跟团要多少钱去沙巴旅游需要多少钱沙巴旅游大概多少钱到沙巴旅游要花多少钱长隆万圣节时间?广州长隆万圣节有什么好玩的? 长隆万圣节2015门票价格?广州长隆万圣节活动安排? 2015深圳锦绣中华万圣节活动时间表?锦绣中华万圣节安排? 今年唯一一次深度探秘摄影团,6.9万元邂逅北极光[三] 紫莲森林度假村首届推广月活动时间?潮州紫莲森林度假村推广月活动攻略? 潮州紫莲度假村网站?紫莲度假村最新活动有哪些? 2015紫莲森林度假村优惠活动?潮州紫莲森林度假村最新新闻? 2015紫莲森林度假村中秋节活动?潮州紫莲森林度假村中秋节门票多少钱? 隐贤山庄门票包含水上乐园?东莞隐贤山庄水上游乐世界门票价格? 北京李大钊故居在哪?怎么去? 2015隐贤山庄水上乐园什么时间开放?东莞隐贤山庄水世界五一开放吗? 苏州六一去哪玩? 长江三峡购物特产概况 都江堰的传说--望娘滩 成都茶馆文化 最不能错过的巫山县特产:巫山农家腊肉(图) ICS843002AGI-01LFT Datasheet ICS843002AGI-01LFT Datasheet IDT7201LA20SO8 Datasheet IDT7201LA20SO8 Datasheet ICS843002AGILF Datasheet ICS843002AGILF Datasheet 欧洲旅游团 欧洲旅游团 欧洲旅游团 欧洲旅游线路 欧洲旅游线路 欧洲旅游线路 欧洲旅游的线路 欧洲旅游的线路 欧洲旅游的线路