博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET MVC5 Authentication Filters执行链
阅读量:5290 次
发布时间:2019-06-14

本文共 1240 字,大约阅读时间需要 4 分钟。

注意区分认证和授权:

The following  are the differences in short:

  1. Authentication(认证): It is a process of verification that verifies “Who you are” (it confirms that you are a valid (or invalid) user).
  2. Authorization(授权): It is a process of verification that verifies “What to do” (It confirms you are permissible to do (or not to do) that).

另外在mvc中的认证过滤器总是优先与授权过滤器 

Authentication filters are applied prior to any Authorization filters.

 

MVC中针对授权提供了默认实现,即AuthorizeAttribute,没有针对的默认实现。

接口的OnAuthentication()方法可以用于执行任何需要的身份验证,而OnAuthenticationChallenge方法基于已验证用户的身份限制其访问。

 The OnAuthentication method is executed first and can be used to perform any needed authentication. The OnAuthenticationChallenge method is used to restrict access based upon the authenticated user's principal.

//IAuthenticationFilter提供两个方法public void OnAuthentication(AuthenticationContext filterContext){}public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext){}//注意方法内,如果filterContext.Result进行了赋值(ActionResult),那么针对整个“AuthenticationFilter链”的执行将会立即中止,指定的这个ActionResult对象将用于响应当前请求。
如果在执行过程中对AuthenticationContext.Principal属性进行了赋值(IPrincipal),该属性值将会作为当前HttpContext和当前线程的Principal AuthenticationFilter执行链图示

 

转载于:https://www.cnblogs.com/imust2008/p/5292151.html

你可能感兴趣的文章
图像状态资源的介绍~~以button按钮为例
查看>>
【转】eclipse技巧2
查看>>
Vue.js组件之同级之间的通信
查看>>
javascript中的面向对象(一)
查看>>
Android计算器界面 TableLayout
查看>>
【软件工程】敏捷开发方法的总结
查看>>
路由器原理及作用以及交换机
查看>>
主流PC浏览器调研
查看>>
Linux权限管理 - 基本权限
查看>>
C语言初学 简单计算器计算加减乘除程序
查看>>
smali语法小结
查看>>
[python]-类的继承
查看>>
pkg-config 设置
查看>>
选择之后,不能再选择。分配之后,不能再分配
查看>>
修复Kaos的中文显示
查看>>
自学it18大数据笔记-第三阶段Spark-day03——会持续更新……
查看>>
HBase总结
查看>>
xcode 快捷键
查看>>
STM32 CubeMX 中如何查看系统时钟
查看>>
C# 操作excel
查看>>