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表的例子,所以也许只创建自己的表和实现会更好?

处理角色权限的最佳做法是什么?

提前感谢!塞尔吉。

Identity Server 3+AspNet Identity中基于角色的声明

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/

希望能有所帮助。