【发布时间】:2017-07-14 15:08:44
【问题描述】:
我已经开始开发一个新的 ASP.NET MVC 应用程序,我想使用 ASP.NET Identity 2 进行用户管理。我想摆脱角色,因为我认为这绝对不需要,特别是如果我想到这种方式,ASP.NET Identity 在幕后处理角色:正如声明的那样。 (如有错误请指正)
我有两个关于这个问题的信息:This official Microsoft-Documentation 指出,如果开箱即用的方法不能满足所有要求,则只需要实现所需的功能。另一个信息是,必须从Microsoft.AspNet.Identity.EntityFramework.IdentityUser 派生自定义用户。但是 IdentityUser 实现了IdentityUser<string, IdentityUserLogin, IdentityUserRole, IdentityUserClaim>, IUser, IUser<string>
从我的角度来看,这些信息并不是真正兼容的,因为如果我从这个 IdentityUser 派生,无论我需要与否,我都会将所有这些东西放入我的 CustomUser-Implementation 中。
还有一件事我想知道:根据我对身份架构的理解,主要有两个部分:商店和经理。 Manager 耦合到 Application 和 Store,而 Store 耦合到 Manager 和 Storage。
存储接口与我预期的一样灵活。也许我应该从这里开始 - 但我仍然不知道如何创建一个 customUser 作为一个实体,它派生自 IdentityUser,而不引用任何角色。谁能告诉我我的问题是什么?
我发现的关于这个问题的唯一 stackoverflow 问题是 here。但我不相信,这是一种可以遵循的方法。
【问题讨论】:
-
你可以使用 ASP.NET Core 吗?
-
你想摆脱角色,但你想要什么回报?
-
我不理解这种想要摆脱那些不在你身边的东西的愿望。如果您不需要角色 - 不要使用它们。是的,您的数据库中将有 2 个表。所以呢?这些表将是空的,几乎不会占用任何空间(现在存储空间很便宜)。努力把它们挖出来是浪费时间,而且不会很成功。
-
@Win:不幸的是,目前还没有。我们必须等待,尤其是对于 EF Core..
-
@Ruard:声明。也许我这里有问题,但我认为基于声明的方法可以取代基于角色的方法。
标签: c# asp.net asp.net-mvc-4 entity-framework-6 asp.net-identity-2