public static PrimeActsUserManager Create(IdentityFactoryOptions <PrimeActsUserManager> options, IOwinContext context) { var unitOfWork = DependencyResolver.Current.GetService <IUnitOfWorkAsync>(); var applicationUserOrchestra = DependencyResolver.Current.GetService <IApplicationUserOrchestra>(); var applicationRoleOrchestra = DependencyResolver.Current.GetService <IApplicationRoleOrchestra>(); var manager = new PrimeActsUserManager(new PrimeActsUserStore(unitOfWork, applicationUserOrchestra, applicationRoleOrchestra)); // Configure validation logic for usernames manager.UserValidator = new UserValidator <ApplicationUser, Guid>(manager) { AllowOnlyAlphanumericUserNames = false, RequireUniqueEmail = 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(20); 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 it in here. manager.RegisterTwoFactorProvider("Phone Code", new PhoneNumberTokenProvider <ApplicationUser, Guid> { MessageFormat = "Your security code is {0}" }); manager.RegisterTwoFactorProvider("Email Code", new EmailTokenProvider <ApplicationUser, Guid> { Subject = "Security Code", BodyFormat = "Your security code is {0}" }); manager.EmailService = new EmailService(); manager.SmsService = new SmsService(); var dataProtectionProvider = options.DataProtectionProvider; if (dataProtectionProvider != null) { manager.UserTokenProvider = new DataProtectorTokenProvider <ApplicationUser, Guid>( dataProtectionProvider.Create("ASP.NET Identity")) { TokenLifespan = TimeSpan.FromHours(3) }; } return(manager); }
public PrimeActsSignInManager(PrimeActsUserManager userManager, IAuthenticationManager authenticationManager) : base(userManager, authenticationManager) { }