ASP.NET: IAuthorizationService 的用途是什么

ASP.NET: What is the purpose of IAuthorizationService

我正在尝试了解 ASP.NET 基于策略的授权机制,我了解到我需要执行以下操作:

  1. 制定政策
  2. 为该政策分配要求
  3. 为执行实际验证的这些要求定义授权处理程序(以及 return 是否满足要求)
  4. 将授权处理程序添加到依赖项注入机制

但是,阅读 ASP.NET 文档后,我了解到我可能还需要设置 IAuthorizationService。我无法从 ASP.NET 文档中理解为什么需要这样做。

我必须设置一个吗?它应该做什么?这是我正在设置的策略和授权处理程序的替代方法还是对它们的必需添加?

您可以覆盖 IAuthorizationService 以控制应用程序中的完整授权逻辑。 默认情况下,IAuthorizationService 负责验证在 AuthorizationOptions.

中定义的基于策略声明或角色的规则

IAuthorizationService 通常在 IAsyncAuthorizationFilter 中调用(一旦您使用 [Authorize] 属性标记控制器或操作,MVC 会自动添加)。