我正在使用 ASP.NET Boilerplate。我定义了一个名为
Customer
的角色,并为该角色分配了许多权限,例如 Create company
和 Delete company
。
但是,我想给予用户控制权限的可能性。具体来说,我不希望某些具有角色
Customer
的用户访问分配给该角色的所有权限。例如,我希望拥有角色 Tim
的用户 Customer
能够访问 Create company
和 Delete company
,但同时拥有角色 John
的用户 Customer
应该只能访问 Delete company
。我可以这样做吗?
我尝试使用
IPermissionManager
为用户设置权限,如下所示:
await permissionManager.SetForUserAsync(userId: userID, name: "CreateCompany", isGranted: false);
这种方法的问题是用户仍然可以访问 CreateCompany
。
当您查询权限API时,将为您提供公司子级的角色权限。你可以用它来控制谁访问谁roleId