public ActionResult Login(UserLoginCustomModel objModel) { try { if (ModelState.IsValid) { Response _Result2 = new Response(); UserLoginCustomModel _Result = new UserLoginCustomModel(); // TODO: Add insert logic here objBDC = new UserLoginBusiness(); string UserName = ""; string Password = ""; UserName = objModel.UserName; Password = objModel.Password; _Result = objBDC.Authenticate(UserName, Password); if (_Result.Id > 0) { _objLoginCustom.Id = _Result.Id; _objLoginCustom.FName = _Result.FName; _objLoginCustom.LName = _Result.LName; _objLoginCustom.EmailId = _Result.EmailId; _objLoginCustom.UserName = _Result.UserName; Session[CommonStrings.UserSession] = _objLoginCustom; int?_DefaultSessionId = objBDC.GetSessionID(); Session[CommonStrings.DefaultSession] = _DefaultSessionId; return(RedirectToAction("Index", "Dashboard")); } else { TempData["Message"] = "Error^" + "Either username or password is not valid!"; return(View()); } //TempData["Success"] = "Added Successfully!"; //if (_Result.success == true) // TempData["Message"] = "Success^" + _Result.message; //else if (_Result.success == false) // TempData["Message"] = "Error^" + _Result.message; //return RedirectToAction("Login", "Login"); } else { return(View()); } } catch { return(View()); } }
public IActionResult Post([FromBody] UserLoginCustomModel value) { var loginData = db.Users.FirstOrDefault(s => s.Email == value.Email); var loginStatus = Bcrypt.BCrypt.Verify(value.Password, loginData.Password); if (loginStatus) { String token = GenerateJSONToken(value); return(Ok(new { token = token, accountType = loginData.AccountType })); } else { return(BadRequest(new { message = "Invalid Credentials" })); } }
private string GenerateJSONToken(UserLoginCustomModel user) { var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_config["Jwt:Key"])); var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256); var claims = new[] { new Claim("Email", user.Email), new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()) }; var token = new JwtSecurityToken(_config["Jwt:Issuer"], _config["Jwt:Issuer"], claims, expires: DateTime.Now.AddMinutes(120), signingCredentials: credentials); return(new JwtSecurityTokenHandler().WriteToken(token)); }
/// <summary> /// Authenticate the Login User /// </summary> /// <param name="_userName"></param> /// <param name="password"></param> /// <returns></returns> public UserLoginCustomModel Authenticate(string UserName, string Password) { UserLoginCustomModel objModel = new UserLoginCustomModel(); string IsSuccess = "false"; using (response = new Response()) { using (dbcontext = new SchoolManagementEntities()) { try { response.success = true; { if (UserName.Contains("@")) { var UserDetails = dbcontext.tblUserLogins.Where(x => x.UserName == UserName && x.Password == Password).FirstOrDefault(); if (UserDetails != null) { objModel.Id = UserDetails.Id; objModel.FName = UserDetails.FName; objModel.LName = UserDetails.LName; objModel.EmailId = UserDetails.EmailId; objModel.UserName = UserDetails.UserName; objModel.Password = UserDetails.Password; IsSuccess = "true"; } else { IsSuccess = "false"; } } } } catch (Exception ex) { response.success = false; response.message = ex.Message; objModel = null; } } } return(objModel); }