我选择'个人用户帐户'时使用最新和最大的身份3.x来与股票与MVC6核心1.0。ASP.NET身份和创建角色功能
我的用户身份验证的要求如下:
Users -> AspNetUsers
Roles -> AspNetRoles
UserRoles -> AspNetUserRoles
RoleFunctions -> I don't see a table for this in the Identity db structure
RoleFunctions是任何类型的系统功能,如DeleteCustomers,AccessToCustomerPage等
我要承担ASP.NET身份不支持基于角色的身份验证的额外步骤,因此我将不得不自己创建表和函数。这是真的吗?还是仅仅是为了我,我只是没有看到它?
我想你指的是** **的政策。我猜你会有一个已知数量的角色函数,它们将在你的代码中被知道(除非你的目标是一些动态)?您可以考虑对它们进行硬编码并创建策略,例如“为了删除客户,用户必须拥有这个,这个和/或这个角色”。看看这里:https://docs.asp.net/en/latest/security/authorization/roles.html#policy-based-role-checks – regnauld
好,所以你说,如果我有一堆全局常量的所有角色功能和使用政策,我不应该需要RoleFunctions表?问题是我需要在功能级而不是角色级执行所有的检查。例如:如果当前登录的用户是包含DeleteCustomer的角色的一部分,则在视图模型中显示垃圾桶。 –