我想使用 ASP.NET Core 进行基于角色的授权,但角色需要是可编辑的。我的想法是制作这样的角色:
- 姓名
- 可编辑
- 可以删除
- 等等
并且用户将分配角色。
默认角色不是一个选项,因为我需要编辑这些角色。我正在考虑一些奇怪的策略使用或编写我自己的授权。
[Authorize(Roles = "Administrator")] // Not editable
我必须告诉我,我没有使用Identity
JWT 进行身份验证。
...
[Authorize(Policy = "CanEdit")]
SomeEditMethod()
...
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddAuthorization(options =>
{
options.AddPolicy("CanEdit", policy => policy.RequirePrivilege("CanEdit"));
});
}
我很难做到RequirePrivilege
。各位开发者怎么看?有任何想法吗?