1

我找不到 FoxIDs 发出的 blazorweba_oidcpkce_sample:access 的。我想知道它是否应该将其存储在 appsettings.json 中。谢谢!

4

1 回答 1

1

示例客户端blazorweba_oidcpkce_sampleFoxIDs中配置,并且客户端被授予blazorweba_oidcpkce_sample:access访问后端 API 的范围。在此场景中,前端客户端和后端资源 (API) 都具有相同的名称 ( blazorweba_oidcpkce_sample)。

示例客户端请求在 appsettings.jsonblazorweba_oidcpkce_sample:access中配置。

API 验证访问令牌是否包含范围并在范围存在时授予访问权限。

FoxIDs 测试轨道上test1@foxids.com具有密码的测试用户有两个角色和. 例如,可以在这样的政策中要求:TestAccess!role1role2role1

public static void AddPolicy(AuthorizationOptions options)
{
    options.AddPolicy(_name, policy =>
    {
        policy.RequireScopeAndRoles(
            new ScopeAndRoles { Scope = "blazorweba_oidcpkce_sample:access", Roles = new [] { "role1" } }
        );
    });
}
于 2021-04-11T07:52:29.647 回答