小编And*_*sey的帖子

如何通过控制器将参数传递给策略中使用的授权处理程序

我一直在寻找这个问题的答案,但似乎找不到直接的答案。我有一个在策略中使用的授权处理程序。典型示例如下:

services.AddAuthorization(options =>
    {
        options.AddPolicy("AtLeast21", policy =>
            policy.Requirements.Add(new MinimumAgeRequirement(21)));
    });
Run Code Online (Sandbox Code Playgroud)

然后在控制器上的授权属性中指定策略。我想做的是在控制器级别指定年龄要求。例如:

[Authorize(Policy = "AtLeast21", 21)]
Run Code Online (Sandbox Code Playgroud)

我的想法是,我可以将相同的授权处理程序用于多个控制器操作或多个策略。

有谁知道如何做到这一点?

policy authorization asp.net-core

3
推荐指数
1
解决办法
2608
查看次数

标签 统计

asp.net-core ×1

authorization ×1

policy ×1