1.新建自定义属性类

public class BaseFilterAttribute : FilterAttribute, IAuthorizationFilter{/// <summary>/// 自定义扩展属性,验证用户登录/// </summary>/// <param name="filterContext">AuthorizationContext 类将封装有关控制器、HTTP 上下文、请求上下文、路由数据、操作描述符和操作结果的信息。</param>public void OnAuthorization(AuthorizationContext filterContext){if (filterContext.HttpContext == null){throw new Exception("HTTP 上下文不存在!");}if (filterContext.HttpContext.Session == null){throw new Exception("服务器Session不可用!");}if (filterContext.ActionDescriptor.IsDefined(typeof(AllowAnonymousAttribute), true)) return;if (filterContext.HttpContext.Session[ConfigHelper.SessionCookieKey] != null) return;//if(filterContext.HttpContext.Request.Cookies[ConfigHelper.SessionCookieKey]==null)//    filterContext.Result = new RedirectResult("~/Views/Account/Login.cshtml");if (CookiesHelper.GetCookie(ConfigHelper.SessionCookieKey) == null)filterContext.Result = new RedirectResult(ConfigHelper.SessionCookieReturnUrl);}}

2.在相关的Controller类添加该自定义属性

[BaseFilter]public class PreListController : BaseController{}

3.设置不用验证的相关的方法允许匿名访问

        [AllowAnonymous]public ActionResult Login(){return View();}

转载于:https://www.cnblogs.com/FH-cnblogs/p/5644498.html

MVC 自定义属性验证登录相关推荐

  1. MVC用AuthorizeAttribute登录验证

    下面代码可实现记录返回登录页时的地址,时时验证登录信息 (由软谋eleven老师提供) /// <summary>/// ajax跟exception一致/// 检验登陆和权限的filte ...

  2. Asp.Net MVC 身份验证-Forms

    Asp.Net MVC 身份验证-Forms 在MVC中对于需要登录才可以访问的页面,只需要在对应的Controller或Action上添加特性[Authorize]就可以限制非登录用户访问该页面.那 ...

  3. 本地ASP.NET开发页面使用AzureAD(AAD)验证登录

    Azure和Office365已不是一个热门话题了,因为所谓的云时代已经走进了技术大师们的内心,大家多少有一定了解了,所以就不多介绍了,我的Blog中之前也写了很多关于Azure及Office365的 ...

  4. MVC登陆验证操作流程

    MVC登陆验证操作流程 下面我们来了解MVC登陆验证操作流程 首先我也先搭建一个登陆页面,页面内容包括用户帐号,密码,验证码,具体身份,等输入框,对输入内容传到控制器进行验证匹配.当用户点击登陆时进行 ...

  5. MVC Model验证总结 @Html.ValidationSummary(true)

    原文:https://blog.csdn.net/wybshyy/article/details/52064253 ASP.NET MVC3中的Model是自验证的,这是通过.NET4的System. ...

  6. 二、SpringSecurity 自定义手机验证登录方式

    简介 在上一篇文章中,我们介绍了如何搭建一套基于SpringSecuity的项目框架,并且进行了演示,本文将继续扩展项目功能,实现自定义用户登录功能. 项目源码仓库:Gitee 代码分支:lesson ...

  7. SharePoint 客户端经常弹出Windows验证登录框问题

    场景描述: Site工作人员UserA创建了一个Task,并且Assign给UserB.UserB接到来自Task List的邮件通知.这时UserA发现Assign的人错了,重新修改Task Ite ...

  8. 配置Open***使用User/Pass方式验证登录

    Open***和PPTP ***相比存在诸多的优势,最明显的是Open***支持NAT穿越,也就是说在nat环境下使用open***只需要一个在路由器上做一个端口映射即可!不需要其他路由的支持,要知道 ...

  9. ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

    在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图.但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好.打开Models \ Movie ...

最新文章

  1. 从Nginx源码谈大小写字符转化的最高效代码以及ASCII码表的科学
  2. [原创] Neo.Geo 视频帧浏览器开发日志
  3. 计算机系统计算机,计算机系统与计算机化系统的区别
  4. oracle还原脚本,oracle自动恢复脚本
  5. 黄聪:WordPress动作钩子函数add_action()、do_action()源码解析
  6. 网站漏洞修复之CSRF跨站攻击
  7. 无密码如何破解PDF加密
  8. 计算机策略 提高网速,win10增加网速的方法_win10如何提高电脑网速
  9. 虞老师在PRCV2021的Talk-Neural Human Reconstruction:From Rendering to Modeling
  10. GPS测量中四参数、七参数的概念及意义
  11. 网页加载过程+性能优化+安全
  12. hr面试性格测试30题_人事面试--测试篇--30
  13. Mac安装软件提示“已损坏,无法打开”的解决办法
  14. java中通物流api详解
  15. 虾皮运营之不实折扣有多严重?堪比双十一 虾皮运营技巧
  16. 我把csdn版权标志隐藏了.
  17. HTML标签 链接 CSS样式
  18. AI每日小练习之磨砂玻璃质感图标
  19. Endnote新手使用指南——终于解决EndNote困扰我一晚上的难题,其实很简单!
  20. python可视化编程(pyQT designer)安装及入门教程

热门文章

  1. 如何完整卸载wxpython_TextCtrl的WXPython C++部分被删除
  2. 嵌入式Linux入门9:Linux系统使用
  3. 【kafka】kafka 同时建立很多消费者 会怎么样
  4. 95-00-030-环境-IDEA构建源码阅读环境
  5. 50-20-010-kafka 配置-Listeners
  6. 【Kafka】Kafka Schema Registry 原理
  7. 【Nexus3】使用-Nexus3批量上传jar包 artifact upload
  8. 95-190-450-源码-window-Trigger-ContinuousProcessingTimeTrigger
  9. NullPointerException : HiveAuthorizerImpl.checkPrivileges(HiveAuthorizerImpl.java:85)
  10. MySQL日期处理-查询间隔数据