我正在使用 Identity Server v4(但我认为与 v3 相同)和 .NET Core。
现在我有一个奇怪的问题,我不明白。
在我的 MVC 应用程序中,我使用[Authorize(Roles="Geek")]来保护我的控制器/操作。从HttpContext中查看当前用户,所有角色都可以作为声明而不是角色(实际上User.IsInRole("Geek")返回 false)。
此外,我不能使用带有授权属性的声明,因为所有角色都使用相同的键(当然是“角色”)存储到声明集合中。
有没有办法自动将所有具有关键“角色”的声明也作为当前委托人的角色?
我试图玩“on token validate event”,但没有成功。
我正在尝试示例存储库,所以我的代码与此https://github.com/IdentityServer/IdentityServer4.Samples/tree/dev/MVC%20and%20API完全相同
有什么提示吗?