问题描述
我找不到 FoxIDs 发出的 blazorweba_oidcpkce_sample:access 的值。我想知道它是否应该将它存储在 appsettings.json 中。谢谢!
解决方法
示例客户端 blazorweba_oidcpkce_sample
在 FoxIDs 中配置,并且客户端被授予 blazorweba_oidcpkce_sample:access
范围,该范围允许调用后端 API。在此场景中,前端客户端和后端资源 (API) 具有相同的名称 (blazorweba_oidcpkce_sample
)。
示例客户端请求 blazorweba_oidcpkce_sample:access
,即 configured in appsettings.json。
API 验证 access token contain the scope 并在范围存在时授予访问权限。
FoxIDs 测试轨道上密码为 test1@foxids.com
的测试用户 TestAccess!
有两个角色 role1
和 role2
。
可以要求例如role1
在政策中是这样的:
public static void AddPolicy(AuthorizationOptions options)
{
options.AddPolicy(_name,policy =>
{
policy.RequireScopeAndRoles(
new ScopeAndRoles { Scope = "blazorweba_oidcpkce_sample:access",Roles = new [] { "role1" } }
);
});
}