MVC5学习小记(4):自定义授权过滤器
来源:互联网 发布:酒店市场数据分析 编辑:程序博客网 时间:2024/06/11 09:28
1.实现自定义过滤器处理函数
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mvc;using System.Web.Security;namespace lengxia.site.Controllers{ public class CustomAuthAttribute : AuthorizeAttribute { public string[] roles; public string[] users; public CustomAuthAttribute(string role,string user)//params { roles = role.Split(','); users = user.Split(','); } protected override bool AuthorizeCore(HttpContextBase httpContext)//处理函数 { if (httpContext.Session["user"] != null) { string s = httpContext.Session["user"].ToString(); foreach (var item in users) { if (item == s) return true; } } if (httpContext.Session["role"] != null) { string s = httpContext.Session["role"].ToString(); foreach (var item in roles) { if (item == s) return true; } } return false; // return base.AuthorizeCore(httpContext); } protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)//验证失败处理 { filterContext.Result = new RedirectResult("/Account/Login"); } }}
2.使用过滤器
namespace lengxia.site.Controllers{ [CustomAuth("","lengxia,admin")] public class HomeController : Controller {
3.添加原始认证
<!--认证,添加--> <authentication mode="Forms"> <forms loginUrl="~/Account/Login" timeout="2880"></forms> </authentication> <!--<authentication mode="None" />-->
阅读全文
0 0
- MVC5学习小记(4):自定义授权过滤器
- MVC5学习小记(1)
- MVC5学习小记(2)
- MVC5学习小记(3)--数据库操作
- MVC5学习小记(5) pagedlist分页+EF
- MVC 自定义过滤器(Filter)实现路由控制、异常处理、授权处理(获取客户端信息)
- 授权过滤器
- AngularJS学习记录-过滤器(自定义过滤器)
- asp.net mvc5 身份验证过滤器
- 自定义授权(accessDecisionManager)
- 自定义控件(4)---PorterDuffColorFilter混合过滤器
- 自定义filter(过滤器)
- MVC5创建自定义图片链接
- MVC5自定义T4模板
- ZendFramework学习第三章(核心组件—过滤器之创建自定义过滤器)
- ZendFramework学习第三章(核心组件—过滤器之创建自定义过滤器)
- Vue.js学习 Item14 – 过滤器与自定义过滤器
- wireshark过滤器小记
- [Muduo网络库源码分析] (10) base/ThreadPoll_cc_h_线程池
- linux常用文件操作命令
- 智能版石头剪刀布——c++实现
- Webpack "Invalid Host Header"
- UITableView+FDTemplateLayoutCell xib demo 例子
- MVC5学习小记(4):自定义授权过滤器
- PMM部署遇到的坑
- 学习规划
- s2sh 分发服务
- Java transient关键字使用小记
- 最大似然估计(MLE)和最大后验概率(MAP)
- 排序程序总结
- Quadtree plus binary tree (QTBT) block structure
- Windows文件检索、复制工具(Python Tkinter)