Exemple #1
0
        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);
        }
Exemple #6
0
 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();
 }