private async Task SignInAsync( HttpContext context, FaToolUserManager userManager, FaToolUser user, bool isPersistent) { var roles = await userManager.GetRolesAsync(user.Id); var userData = string.Join(";", roles); var ticket = new FormsAuthenticationTicket( 1, user.UserName, DateTime.Now, DateTime.Now.AddDays(1), isPersistent, userData, FormsAuthentication.FormsCookiePath); string encryptedTicket = FormsAuthentication.Encrypt(ticket); var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); cookie.HttpOnly = true; context.Response.Cookies.Add(cookie); }
private ActionLink DeleteUserAction(FaToolUser user) { bool disabled = User.IsAdminUser() == false || user.IsAdminUser(); return(new ActionLink( "Delete User", Url.Action("Delete", new { id = user.Id }), disabled)); }
private ActionLink LockUserAction(FaToolUser user) { bool disabled = User.IsAdminUser() == false || user.IsAdminUser(); return(new ActionLink( "Lock/Unlock User", Url.Action("Lockout", new { id = user.Id }), disabled)); }
private ActionLink GrantRolesAction(FaToolUser user) { bool disabled = User.IsAdminUserOrAdminRole() == false; return(new ActionLink( "Grant/Revoke Roles", Url.Action("Roles", new { id = user.Id }), disabled)); }
public UserViewModelBase(FaToolUser user, TProperties properties) : base(properties) { if (user == null) { throw new ArgumentNullException("user"); } User = user; }
public EditUserViewModel( FaToolUser user, FaToolPersonalProperties properties, IEnumerable <SelectListItem> countryOptions) : base(user, properties) { if (countryOptions == null) { throw new ArgumentNullException("countryOptions"); } CountryOptions = countryOptions.ToArray(); }
public async Task <ActionResult> Register( [Bind(Prefix = "Properties")] FaToolRegisterProperties properties) { if (ModelState.IsValid) { FaToolUser user = new FaToolUser(properties); IdentityResult result = await UserManager.CreateAccountAsync( user, properties.Password, FaToolRoles.USER); if (result.Succeeded) { if (User.IsAdminUserOrAdminRole()) { return(this.Redirect(ShowUserAction(user).Url)); } else { if (User.IsAuthenticated()) { await AuthenticationManager.SignOutAsync(); } // TODO implement email approve //return View("RegisterWelcome"); return(RedirectToAction("Index", "Home")); } } else { AddErrors(result); var model = new RegisterViewModel( properties, GetCountryOptions(properties.Country)); return(View("Register", model)); } } else { var model = new RegisterViewModel( properties, GetCountryOptions(properties.Country)); return(View("Register", model)); } }
protected async Task <IEnumerable <SelectListItem> > GetRoleOptions(FaToolUser user) { var selectedRoles = await UserManager.GetRolesAsync(user.Id); var allRoles = await RoleManager .Roles .OrderBy(x => x.Name) .ToArrayAsync(); return(allRoles.Select(x => new SelectListItem() { Value = x.Name, Text = x.Name, Selected = selectedRoles.Contains(x.Name) })); }
private async Task <string> GenerateJwtTokenAsync( FaToolUserManager userManager, FaToolUser user) { var identity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); var claims = identity.Claims; var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("SOME_RANDOM_KEY_DO_NOT_SHARE")); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); var expires = DateTime.Now.AddMinutes(30); var issuer = "http://fatool.com"; var tokenHandler = new JwtSecurityTokenHandler(); var token = new JwtSecurityToken( issuer, issuer, claims, expires: expires, signingCredentials: creds ); return(tokenHandler.WriteToken(token)); }
public EditUserRolesViewModel(FaToolUser user, IEnumerable <SelectListItem> roles) : base(user, new CheckList("SelectedRoles", roles)) { }
public ChangePasswordViewModel(FaToolUser user) : this(user, new FaToolChangePasswordProperties()) { }
public ChangePasswordViewModel(FaToolUser user, FaToolChangePasswordProperties properties) : base(user, properties) { }
private ActionLink ShowUserAction(FaToolUser user) { return(new ActionLink( "Show", Url.Action("User", new { id = user.Id }))); }
public LockoutUserViewModel(FaToolUser user, FaToolLockoutProperties properties) : base(user, properties) { }
public LockoutUserViewModel(FaToolUser user) : this(user, new FaToolLockoutProperties()) { }
public EditUserViewModel( FaToolUser user, IEnumerable <SelectListItem> countryOptions) : this(user, new FaToolPersonalProperties(user), countryOptions) { }
private ActionLink EditUserAction(FaToolUser user) { return(new ActionLink( "Edit User", Url.Action("Edit", new { id = user.Id }))); }
private ActionLink ChangePasswordAction(FaToolUser user) { return(new ActionLink( "Change Password", Url.Action("ChangePassword", new { id = user.Id }))); }