public async Task <ActionResult <UserWithToken> > Login([FromBody] EmpUser user) { var getUser = _context.EmpUser.Where(e => e.Username == user.Username).Select(r => r.Password).FirstOrDefault(); bool validPassword = BCrypt.Net.BCrypt.Verify(user.Password, getUser); if (validPassword == false) { return(NotFound()); } user = await _context.EmpUser .Where(e => e.Username == user.Username) .FirstOrDefaultAsync(); UserWithToken userWithToken = new UserWithToken(user); var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes(_jwtsettings.SecretKey); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.GivenName, user.ClientId.ToString()), new Claim(JwtRegisteredClaimNames.NameId, user.Name), new Claim(JwtRegisteredClaimNames.Email, user.CompanyName), }), Expires = DateTime.UtcNow.AddHours(5), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); userWithToken.Token = tokenHandler.WriteToken(token); return(userWithToken); }
public void InitData() { ReBuildDatabase(); u1 = new EmpUser() { Name = "User1" }; u2 = new EmpUser() { Name = "User2" }; r1 = new EmpRole() { Name = "Select" }; r2 = new EmpRole() { Name = "Edit" }; u1.Roles = new List <EmpRole>() { r1, r2 }; u2.Roles = new List <EmpRole>() { r1 }; Session.Save(u1); Session.Save(u2); Session.Save(r1); Session.Save(r2); Session.Flush(); }
public UserWithToken(EmpUser user) { this.Name = user.Name; this.Email = user.Email; this.Password = user.Password; this.Username = user.Username; this.ClientId = user.ClientId; }
public void TestDeleteOneSide() { var session = NewSession; EmpUser u2 = session.CreateCriteria <EmpUser>().Add(Expression.Eq("Name", "User2")).UniqueResult <EmpUser>(); session.Delete(u2); session.Flush(); }
public EmpUser Post([FromBody] EmpUser user) { var hashedPassword = BCrypt.Net.BCrypt.HashPassword(user.Password); user.Password = hashedPassword; _context.EmpUser.Add(user); _context.SaveChanges(); return(user); }
public ActionResult Create(EmpUser empUser) { if (ModelState.IsValid) { db.EmpUsers.Add(empUser); db.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }
public void InitData() { ReBuildDatabase(); u1=new EmpUser(){Name = "User1"}; u2 = new EmpUser() { Name = "User2" }; r1=new EmpRole(){Name = "Select"}; r2 = new EmpRole() { Name = "Edit" }; u1.Roles=new List<EmpRole>(){r1,r2}; u2.Roles=new List<EmpRole>(){r1}; Session.Save(u1); Session.Save(u2); Session.Save(r1); Session.Save(r2); Session.Flush(); }