public static void AppInstanceAuthOnActionExecuting(ActionExecutingContext context) { bool isPost = context.HttpContext.Request.Method.ToLower().Equals("post"); String appInstanceToken = isPost ? context.HttpContext.Request.Form["apt"] : context.HttpContext.Request.Query["apt"]; String strAppInstanceId = isPost ? context.HttpContext.Request.Form["aid"] : context.HttpContext.Request.Query["aid"]; int appInstanceId = 0; int.TryParse(strAppInstanceId, out appInstanceId); if (appInstanceId > 0) { var authority = SecurityRoot.GetAuthority(); if (authority != null) { String actionName = context.ActionDescriptor.DisplayName; String serviceName = context.RouteData.Values["Controller"].ToString(); Dictionary <string, List <string> > authorityData = SecurityRoot.GetAuthority(); if (authorityData.ContainsKey(serviceName)) { if (!authorityData[serviceName].Exists(af => af == actionName)) { context.Result = new ContentResult() { Content = "功能未授权" }; } } else { context.Result = new ContentResult() { Content = "服务未授权" }; } } else { context.Result = new ContentResult() { Content = "无授权数据" }; } } else { context.Result = new ContentResult() { Content = "无授权标识" }; } }
public static void JobAuthorityOnActionExecuting(ActionExecutingContext context) { bool isPost = context.HttpContext.Request.Method.ToLower().Equals("post"); String token = isPost ? context.HttpContext.Request.Form["jt"] : context.HttpContext.Request.Query["jt"]; if (!String.IsNullOrEmpty(token)) { var authority = JobAuthorityCache.GetJobAuthData(token); if (authority != null) { String actionName = context.ActionDescriptor.DisplayName; String serviceName = context.RouteData.Values["Controller"].ToString(); Dictionary <string, List <string> > authorityData = SecurityRoot.GetAuthority(); if (authorityData.ContainsKey(serviceName)) { if (!authorityData[serviceName].Exists(af => af == actionName)) { context.Result = new ContentResult() { Content = "功能未授权" }; } } else { context.Result = new ContentResult() { Content = "服务未授权" }; } } else { context.Result = new ContentResult() { Content = "无授权数据" }; } } else { context.Result = new ContentResult() { Content = "无授权标识" }; } }