public static MyApplicationUserManager Create(IdentityFactoryOptions <MyApplicationUserManager> options, IOwinContext context) { // *** PASS CUSTOM APPLICATION USER STORE AS CONSTRUCTOR ARGUMENT: var manager = new MyApplicationUserManager(new MyApplicationUserStore(context.Get <MyApplicationDbContext>())); // Configure validation logic for usernames // *** ADD INT TYPE ARGUMENT TO METHOD CALL: manager.UserValidator = new CustomUserValidator <MyApplicationUser>(manager) { AllowOnlyAlphanumericUserNames = false, RequireUniqueEmail = false, RequireUniqueCard = true, RequireUniqueUsername = false }; // Configure validation logic for passwords manager.PasswordValidator = new PasswordValidator { RequiredLength = 6, RequireNonLetterOrDigit = true, RequireDigit = true, RequireLowercase = true, RequireUppercase = true, }; // Configure user lockout defaults manager.UserLockoutEnabledByDefault = true; manager.DefaultAccountLockoutTimeSpan = TimeSpan.FromMinutes(5); manager.MaxFailedAccessAttemptsBeforeLockout = 5; // Register two factor authentication providers. // This application uses Phone and Emails as a step of receiving a // code for verifying the user You can write your own provider and plug in here. // *** ADD INT TYPE ARGUMENT TO METHOD CALL: manager.RegisterTwoFactorProvider("PhoneCode", new PhoneNumberTokenProvider <MyApplicationUser, int> { MessageFormat = "Your security code is: {0}" }); // *** ADD INT TYPE ARGUMENT TO METHOD CALL: manager.RegisterTwoFactorProvider("EmailCode", new EmailTokenProvider <MyApplicationUser, int> { Subject = "SecurityCode", BodyFormat = "Your security code is {0}" }); manager.EmailService = new MyEmailService(); manager.SmsService = new MySmsService(); var dataProtectionProvider = options.DataProtectionProvider; if (dataProtectionProvider != null) { // *** ADD INT TYPE ARGUMENT TO METHOD CALL: manager.UserTokenProvider = new DataProtectorTokenProvider <MyApplicationUser, int>(dataProtectionProvider.Create("ASP.NET Identity")); } return(manager); }
public MyApplicationSignInManager(MyApplicationUserManager userManager, IAuthenticationManager authenticationManager) : base(userManager, authenticationManager) { manager = userManager; }