Set authorization for a whole area
2016-02-16 17:24
369 查看
public class FilterConfig { public static void RegisterGlobalFilters(GlobalFilterCollection filters) { filters.Add(new CustomAuthorizeAttribute()); filters.Add(new HandleErrorAttribute()); } } public class CustomAuthorizeAttribute : AuthorizeAttribute { protected override bool AuthorizeCore(HttpContextBase httpContext) { var routeData = httpContext.Request.RequestContext.RouteData; var controller = routeData.GetRequiredString("controller"); var action = routeData.GetRequiredString("action"); var area = routeData.DataTokens["area"]; var user = httpContext.User; if (area != null && area.ToString() == "Customer") { if (!user.Identity.IsAuthenticated) return false; } else if (area != null && area.ToString() == "Admin") { if (!user.Identity.IsAuthenticated) return false; if (!user.IsInRole("Admin")) return false; } return true; } }
相关文章推荐
- NYOJ 89 汉诺塔(二)
- jquery元素选择
- 复利计算程序
- LibreOffice创建数据透视表
- 241. Different Ways to Add Parentheses LeetCode
- 内存泄露的部分原因和解决方法
- 【Unity】Unity中的枚举和标志
- iOS 通知 证书 设置指南
- 随笔--休养生息,平心静气
- php面向对象比较
- jQuery绑定事件的四种方式
- NSScanner 使用实例
- 安装samba实现共享文件夹时遇到的一些依赖关系问题(ubuntu1204)
- 设计模式-责任链
- iOS推送小结(证书的生成、客户端的开发、服务端的开发)
- Django 如何使用Highcharts,其实我们可以摈弃Django-chartit
- 关于苹果支付ApplePay的一些个人总结
- ios 开发--使用模态跳转了2次之后怎么从第三个视图控制器回到跟视图控制器
- linux学习笔记十三:安装vim
- 如何在CentOS 7上修改主机名