【发布时间】:2019-07-05 14:27:44
【问题描述】:
我们有一个现有的数据库,需要使用 IdentityServer4 和 .NET Core 实现基于角色的访问控制。
我的问题是:
1 IdenityServer4 是否支持 RBAC?例如是通过范围声明吗?应该如何实现?
2 我可以使用现有的数据库吗?或者我必须创建一个新数据库吗?
任何建议或代码示例将不胜感激。
更新
我们实施资源所有者密码授权类型和 RBAC。
如有任何建议或代码示例链接,我们将不胜感激。
【问题讨论】:
-
您可以查看github.com/IdentityServer/IdentityServer4/issues/1786 了解如何在服务器(IDS4)和客户端(MVC)端涉及角色声明。
-
角色不是身份服务器的一部分,而是身份的一部分。从我读到的内容来看,他们正在远离 AspNetRoles 表。另一种方法是使用“角色”声明。在设置 IdentityServer 客户端/api 的配置时,您可以映射到代表角色的声明。
-
@RuardvanElburg 您能否详细说明“角色”声明或代码示例的链接。 “在设置 IdentityServer 客户端/api 的配置时,您可以映射到代表角色的声明”
-
github.com/IdentityServer/IdentityServer4.Samples/blob/… 这会将“角色”类型的声明映射为角色(可与 IsInRole 等一起使用)
标签: asp.net-core identityserver4