protected void Application_Start() { TokiotaConfig.Register(); AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); }
private static UserManager <ApplicationUser> CreateUserService(IdentityFactoryOptions <UserManager <ApplicationUser> > options, IOwinContext context) { var service = TokiotaConfig.Resolve <IUserService>(); var manager = service as UserManager <ApplicationUser>; if (manager != null) { var dataProtectionProvider = options.DataProtectionProvider; if (dataProtectionProvider != null) { manager.UserTokenProvider = new DataProtectorTokenProvider <ApplicationUser>(dataProtectionProvider.Create("ASP.NET Identity")); } return(manager); } return(null); }
public override async Task <ClaimsIdentity> CreateUserIdentityAsync(ApplicationUser user) { var service = TokiotaConfig.Resolve <IUserService>(); var identity = await UserManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); var roles = await service.GetRolesAsync(identity.GetUserId()); if (roles == null || roles.Count == 0) { roles = new List <string> { TokiotaStoreRoles.User } } ; foreach (var role in roles) { identity.AddClaim(new Claim(ClaimTypes.Role, role, ClaimValueTypes.String, "Tokiota.Store")); } return(identity); }