【发布时间】:2025-11-27 19:35:02
【问题描述】:
从这篇文章中得到帮助:
https://docs.microsoft.com/en-us/aspnet/core/security/authorization/policies
我尝试为我的操作创建一些策略,但在某些操作中我希望拥有多个策略,如果用户拥有其中任何一个,他们就可以访问控制器的操作:
[Authorize(Policy = "CanAccessMenu1")]
[Authorize(Policy = "CanAccessMenu2")]
public async Task<IActionResult> ActionFroMultiplePolicies([FromBody] ActionRequest request)
{
//..............
}
如何合并这些政策?我可以使用这样的东西吗?
[Authorize(Policy = "CanAccessMenu1, CanAccessMenu2")]
在这种情况下,也许我需要对这个覆盖函数进行一些更改。但我对此一无所知:
Protected override async Task HandleRequirementAsync(AuthorizationHandlerContext context, CanAccessRequirement requirement)
{
}
感谢您的帮助
【问题讨论】:
标签: controller asp.net-core authorization data-annotations authorize-attribute