在ASP.NET Identity 2.x中配置自定义存储

时间:2015-03-10 15:17:02

标签: c# asp.net configuration asp.net-identity owin

我已经开发了以下ASP.NET Identity接口的实现:IUserLoginStore<TUser>IUserClaimStore<TUser>IUserRoleStore<TUser>IUserPasswordStore<TUser>IUserSecurityStampStore<TUser>

此外,我使用OWIN / Katana,所以我需要在启动时通过代码配置它。

如何向ASP.NET Identity提供/配置自定义商店实现?

注意:我一直在搜索一个简单明了的教程,告诉我如何实现这一目标,但我找不到。

1 个答案:

答案 0 :(得分:1)

在MVC 5.2应用程序中创建的默认代码中,身份配置在App_Start\IdentityConfiguration.cs中完成。

要使用您自己的商店而不是默认商店,请更改ApplicationUserManager.Create()方法中的第一行。默认情况下是

var manager = new ApplicationUserManager(
  new UserStore<ApplicationUser>(context.Get<ApplicationDbContext>()));

通过更改它,您可以注入自己的IUserStore实施。

如果您还想更改ApplicationUser类型以使用您自己的类型(或简单地将ApplicationUser重命名为更合适的类型,则可以通过将通用参数更改为ApplicationUserManager <来完成/ p>

public class ApplicationUserManager : UserManager<ApplicationUser>