Asp.NET Core使用ADFS的范围来授权访问web api

时间:2017-09-26 12:02:49

标签: c# .net asp.net-core authorization adfs

可能是一个愚蠢的问题,但我可以验证范围,以便授权请求访问不同的网络API。

作为用户,我有一些由ADFS验证的作用域,并且基于我想要访问API的一个或多个作用域。

这是我尝试从Startup.cs中添加到ConfigureServices()中的内容:

// Policies
services.AddAuthorization(options =>
{
    options.AddPolicy("Read",
        policy => policy.RequireClaim("Read")); // This is the scope
});

我的网络API就像这样[Authorize(Policy = "Read")]

即便如此,当我使用持票人令牌时,我得到了403。

1 个答案:

答案 0 :(得分:2)

替换为: policy => policy.RequireClaim("scope", "Read")); // This is the scope 显然你必须告诉它在哪里检查范围。