Identity Server 3+AspNet Identity中基于角色的声明
本文关键字:Identity 角色 声明 于角色 Server 3+AspNet | 更新日期: 2023-09-27 18:24:20
我使用的是带有AspNet Identity用户服务实现的ASP.NET 5 beta 8和Identity Server 3。默认情况下,AspNet Identity提供了一个名为AspNetRoleClaims的表,这对我的情况来说很好。我的系统中有不同的角色,每个角色都有一些权限,我想将其实现为声明。因此,每个角色都会有一套声明。
我在互联网上没有找到任何使用AspNetRoleClaims表的例子,所以也许只创建自己的表和实现会更好?
处理角色权限的最佳做法是什么?
提前感谢!塞尔吉。
Sergii,
我在寻找类似的东西,看起来所有的角色信息,包括RoleClaims,都是在角色管理器中使用方法GetClaimsSync、AddClaimAsync、RemoveClaimAnc处理的。您可以在此处查看ASP标识代码:https://github.com/aspnet/Identity/blob/dev/src/Microsoft.AspNet.Identity/RoleManager.cs
在角色管理器中,我可以管理角色。示例:
创建角色
await RoleManager.CreateAsync(new IdentityRole { Name = "Test" });
创建角色声明
var roleResult = await RoleManager.AddClaimAsync(role, new Claim("Dashboard", "Read"));
然后,为了检查角色或声明,您现在使用"策略和要求"。这篇文章解释得很好。
http://leastprivilege.com/2015/10/12/the-state-of-security-in-asp-net-5-and-mvc-6-authorization/
希望能有所帮助。