public async Task <IActionResult> Putaa0001(int id, aa0001 aa0001) { if (id != aa0001.aa0001c01) { return(BadRequest()); } _context.Entry(aa0001).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException ex) { if (!aa0001Exists(id)) { return(NotFound()); } else { throw new Exception(ex.Message); } } return(NoContent()); }
public async Task <IActionResult> Update([FromRoute] int id, [FromBody] aa0001 aa0001) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != aa0001.aa0001c01) { return(BadRequest()); } _context.Entry(aa0001).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!IsExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public IActionResult Login([FromBody] aa0001 user) { aa0001 checkUser = _db.aa0001 .Where(a => a.aa0001c13 == user.aa0001c13) .Select(a => a).FirstOrDefault(); if (checkUser == null) { return(BadRequest("Mail is not exist!")); } if (checkUser.aa0001c15 == "0") { return(BadRequest("User is not active!")); } user.aa0001c20 = checkUser.aa0001c20; bool result = ValidateUser(user); if (result) { var tokenstring = GenerateJWT(); checkUser.aa0001c24 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); checkUser.aa0001c25 = user.aa0001c25; checkUser.aa0001c26 = tokenstring; _db.Update(checkUser); _db.SaveChanges(); return(Ok(new { token = tokenstring })); } else { return(Unauthorized()); } }
public async Task <ActionResult <aa0001> > Postaa0001(aa0001 aa0001) { _context.aa0001.Add(aa0001); await _context.SaveChangesAsync(); return(CreatedAtAction("Getaa0001", new { id = aa0001.aa0001c01 }, aa0001)); }
public IActionResult Login([FromBody] aa0001 aa0001) { if (isExists(aa0001.aa0001c11)) { return(BadRequest("Username is not exist!")); } if (isActive(aa0001.aa0001c11)) { return(BadRequest("Username is not active!")); } aa0001.aa0001c21 = getSalt(aa0001.aa0001c11); string ipAdress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); if (ValidateUser(aa0001)) { var tokenstring = GenerateJWT(); aa0001.aa0001c22 = ipAdress; aa0001.aa0001c24 = tokenstring; aa0001.aa0001c25 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); _context.Update(aa0001); _context.SaveChanges(); return(Ok(new { token = tokenstring })); } else { return(Unauthorized()); } }
public IActionResult Login([FromBody] aa0001 aa0001) { if (!IsExists(aa0001.aa0001c11)) { return(BadRequest("Username is not exist!")); } if (!IsActive(aa0001.aa0001c11)) { return(BadRequest("Username is not active!")); } aa0001 user = _context.aa0001.Where(x => x.aa0001c11 == aa0001.aa0001c11).FirstOrDefault(); List <aa0001> groupRoles = _context.aa0001.Where(x => user.aa0001c17.Contains(x.aa0001c31)).ToList(); string roles = string.Join(',', groupRoles.Select(x => x.aa0001c33)); aa0001.aa0001c21 = user.aa0001c21; string ipAdress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); if (ValidateUser(aa0001)) { var tokenstring = GenerateJWT(); user.aa0001c22 = ipAdress; user.aa0001c24 = tokenstring; user.aa0001c25 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //_context.Update(aa0001); _context.SaveChanges(); //aa0001 userinfo = GetInfo(aa0001.aa0001c11); return(Ok(new JWT { Token = tokenstring, Firstname = user.aa0001c12, RoleGroups = user.aa0001c17, Roles = roles })); } else { return(Unauthorized()); } }
public IActionResult Register(aa0001 user) { if (!ModelState.IsValid) { return(View(user)); } if (string.IsNullOrEmpty(user.aa0001c11)) { ViewBag.Message = "Please enter your first name for register!"; return(View()); } if (string.IsNullOrEmpty(user.aa0001c13)) { ViewBag.Message = "Please enter your email for register!"; return(View()); } if (string.IsNullOrEmpty(user.aa0001c21) || user.aa0001c21.Length < 6) { ViewBag.Message = "Password must contain at least 6 characters!"; return(View()); } if (string.IsNullOrEmpty(user.aa0001c22) || user.aa0001c22 != user.aa0001c21) { ViewBag.Message = "Password and confirm password are not match!"; return(View()); } HttpClientHandler clienthandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true }; HttpClient client = new HttpClient(clienthandler) { BaseAddress = new Uri(baseUrl) }; var contentType = new MediaTypeWithQualityHeaderValue("application/json"); client.DefaultRequestHeaders.Accept.Add(contentType); string stringData = JsonConvert.SerializeObject(user); var contentData = new StringContent(stringData, Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync("/api/account", contentData).Result; string stringResponse = response.Content.ReadAsStringAsync().Result; string result = JsonConvert.DeserializeObject <string>(stringResponse); if (response.StatusCode == System.Net.HttpStatusCode.OK) { return(Redirect("/Account/Login")); } else { ViewBag.Message = result; return(View(user)); } }
public async Task <ActionResult <aa0001> > Postaa0001(aa0001 aa0001) { if (aa0001Exists(aa0001.aa0001c11, aa0001.aa0001c14)) { return(BadRequest("This account is really exists!")); } _context.aa0001.Add(aa0001); await _context.SaveChangesAsync(); return(CreatedAtAction("Getaa0001", new { id = aa0001.aa0001c01 }, aa0001)); }
public ActionResult Login(Login inUser) { try { if (!ModelState.IsValid) { return(View()); } aa0001 loginUser = new aa0001 { aa0001c11 = inUser.username, aa0001c23 = inUser.password, }; HttpClientHandler clientHandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return(true); } }; using (HttpClient client = new HttpClient(clientHandler)) { client.BaseAddress = new Uri(baseURI + @"/aa0001/Security"); var respone = client.PutAsJsonAsync <aa0001>("security", loginUser); respone.Wait(); var result = respone.Result; if (result.IsSuccessStatusCode) { var jwtToken = result.Content.ReadAsAsync <JWT>(); jwtToken.Wait(); HttpContext.Session.SetString("token", jwtToken.Result.Token); HttpContext.Session.SetString("firstname", jwtToken.Result.Firstname); HttpContext.Session.SetString("rolegroups", jwtToken.Result.RoleGroups); HttpContext.Session.SetString("roles", jwtToken.Result.Roles); HttpContext.Session.SetString("username", inUser.username); ViewData["Message"] = "Wellcome " + inUser.username; GlobalVariable.UserName = inUser.username; GlobalVariable.Token = jwtToken.Result.Token; GlobalVariable.FirstName = jwtToken.Result.Firstname; GlobalVariable.Permission = jwtToken.Result.Roles.Split(','); return(RedirectToAction("Index", "Home")); } else { ViewData["Message"] = string.Format("Login failure! \n {0}", result.Content.ReadAsStringAsync().GetAwaiter().GetResult()); return(View()); } } } catch (Exception ex) { ViewData["Error"] = ex.Message; ViewData["Message"] = "Login failure!"; return(View()); } }
private bool ValidateUser(aa0001 loginDetails) { MD5 algorithm = MD5.Create(); string pass = EncryptData.StringToHash(loginDetails.aa0001c21, loginDetails.aa0001c20, algorithm); string checkUser = _db.aa0001 .Where(a => a.aa0001c13 == loginDetails.aa0001c13 && a.aa0001c21 == pass) .Select(a => a.aa0001c13).FirstOrDefault(); if (string.IsNullOrEmpty(checkUser)) { return(false); } return(true); }
public async Task <ActionResult <aa0001> > Get(aa0001 aa) { var properties = aa.GetType().GetProperties(); var param = (properties.Cast <PropertyInfo>() .Where(x => x.GetValue(aa, null) != null && x.Name != "aa0001c01") .Select(x => x.GetValue(aa, null))).ToArray(); var aa0001 = await _context.Aa0001.FindAsync(param); if (aa0001 == null) { return(NotFound("Not found")); } return(aa0001); }
public IActionResult ActiveUser([FromBody] string token) { aa0001 userActive = CheckToken(token); if (userActive != null) { userActive.aa0001c16 = "1"; _context.Update(userActive); _context.SaveChanges(); return(Ok()); } else { return(BadRequest()); } }
public IActionResult ActiveUser([FromQuery] string email) { aa0001 checkUser = _context.aa0001 .Where(a => a.aa0001c14 == email) .Select(a => a).FirstOrDefault(); if (checkUser == null) { ViewData["Message"] = string.Format("Email {0} invaild!", email); return(View()); } checkUser.aa0001c16 = "True"; _context.Update(checkUser); _context.SaveChanges(); ViewData["Message"] = string.Format("Email {0} is actived!", email); return(View()); }
public IActionResult ActiveUser([FromQuery] string email) { aa0001 checkUser = _db.aa0001 .Where(a => a.aa0001c13 == email) .Select(a => a).FirstOrDefault(); if (checkUser == null) { ViewBag.Message = string.Format("Email {0} invaild!", email); return(View()); } checkUser.aa0001c15 = "1"; checkUser.aa0001c23 = "Actived"; _db.Update(checkUser); _db.SaveChangesAsync(); ViewBag.Message = string.Format("Email {0} is actived!", email); return(View()); }
public IActionResult Login(aa0001 user) { if (string.IsNullOrEmpty(user.aa0001c13)) { ViewBag.Message = "Please enter your email for login!"; return(View()); } if (string.IsNullOrEmpty(user.aa0001c21)) { ViewBag.Message = "Please enter your password for login!"; return(View()); } HttpClientHandler clienthandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true }; HttpClient client = new HttpClient(clienthandler) { BaseAddress = new Uri(baseUrl) }; var contentType = new MediaTypeWithQualityHeaderValue("application/json"); client.DefaultRequestHeaders.Accept.Add(contentType); string stringData = JsonConvert.SerializeObject(user); var contentData = new StringContent(stringData, Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync("/api/security", contentData).Result; string result = response.Content.ReadAsStringAsync().Result; if (response.StatusCode == System.Net.HttpStatusCode.OK) { JWT jwt = JsonConvert.DeserializeObject <JWT>(result); HttpContext.Session.SetString("token", jwt.Token); } else { string message = JsonConvert.DeserializeObject <string>(result); ViewBag.Message = message; return(View(user)); } return(Redirect("/Home/Index")); }
public async Task <IActionResult> Register([FromBody] aa0001 user) { string checkUser = _context.aa0001 .Where(a => a.aa0001c13 == user.aa0001c13) .Select(a => a.aa0001c13).FirstOrDefault(); if (!string.IsNullOrEmpty(checkUser)) { return(BadRequest(string.Format("This mail {0} is aready exist!", checkUser))); } MD5 algorithm = MD5.Create(); string salt = EncryptData.RandomSalt(12); aa0001 outUser = new aa0001 { aa0001c07 = user.aa0001c13, aa0001c08 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), aa0001c11 = user.aa0001c11, aa0001c12 = user.aa0001c12, aa0001c13 = user.aa0001c13, aa0001c14 = user.aa0001c14, aa0001c15 = "0", aa0001c16 = user.aa0001c16, aa0001c20 = salt, aa0001c21 = EncryptData.StringToHash(user.aa0001c21, salt, algorithm), aa0001c23 = "Not active", aa0001c26 = EncryptData.StringToHash(user.aa0001c13, salt, algorithm), }; _context.aa0001.Add(outUser); await _context.SaveChangesAsync(); MailInfo mailInfo = new MailInfo { mailTo = outUser.aa0001c13, mailSubject = string.Format("Active Account From {0}", baseUrl), mailMessage = string.Format("{0}/Account/ActiveUser/?email={1}", baseUrl, outUser.aa0001c13) }; SendMail.SendMailAuto(mailInfo); return(Ok("Your are registed! Please check mail and active your account!")); }
public async Task <IActionResult> Putaa0001(aa0001 aa0001) { _context.Entry(aa0001).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!aa0001Exists(aa0001.aa0001c01)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> Putaa0001(aa0001 aa0001) { //_context.Entry(aa0001).State = EntityState.Modified; try { aa0001 userActive = CheckUser(aa0001.aa0001c11); if (userActive != null) { userActive.aa0001c01 = aa0001.aa0001c01; userActive.aa0001c07 = aa0001.aa0001c07; userActive.aa0001c08 = aa0001.aa0001c08; userActive.aa0001c11 = aa0001.aa0001c11; userActive.aa0001c12 = aa0001.aa0001c12; userActive.aa0001c13 = aa0001.aa0001c13; userActive.aa0001c14 = aa0001.aa0001c14; userActive.aa0001c55 = aa0001.aa0001c55; userActive.aa0001c16 = aa0001.aa0001c16; userActive.aa0001c17 = aa0001.aa0001c17; userActive.aa0001c25 = aa0001.aa0001c25; _context.Update(userActive); await _context.SaveChangesAsync(); return(Ok()); } } catch (DbUpdateConcurrencyException) { if (!aa0001Exists(aa0001.aa0001c01)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> Register([FromBody] aa0001 aa0001) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (IsExists(aa0001.aa0001c11, aa0001.aa0001c14)) { return(BadRequest("This username or email is exists!")); } string salt = EncryptData.RandomSalt(12); aa0001.aa0001c05 = aa0001.aa0001c11; aa0001.aa0001c06 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); aa0001.aa0001c16 = "0"; aa0001.aa0001c17 = "None"; aa0001.aa0001c23 = EncryptData.StringToHash(aa0001.aa0001c23, salt, MD5.Create()); _context.aa0001.Add(aa0001); await _context.SaveChangesAsync(); return(CreatedAtAction("Get", new { id = aa0001.aa0001c01 }, aa0001)); }
public ActionResult Register(Register inUser) { try { if (!ModelState.IsValid) { return(View(inUser)); } string salt = EncryptData.RandomSalt(12); string ipAdress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string tokenActive = inUser.username.StringToHash(salt, MD5.Create()); aa0001 regUserInfo = new aa0001 { aa0001c05 = inUser.username, aa0001c06 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), aa0001c11 = inUser.username, aa0001c12 = inUser.firstname, aa0001c13 = inUser.lastname, aa0001c14 = inUser.email, aa0001c15 = inUser.phone, aa0001c16 = "0", aa0001c17 = "None", aa0001c21 = salt, aa0001c22 = ipAdress, aa0001c23 = EncryptData.StringToHash(inUser.password, salt, MD5.Create()), aa0001c24 = tokenActive }; HttpClientHandler clientHandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return(true); } }; using (HttpClient client = new HttpClient(clientHandler)) { client.BaseAddress = new Uri(baseURI + @"/aa0001/Accounts"); var respone = client.PostAsJsonAsync <aa0001>("accounts", regUserInfo); respone.Wait(); var result = respone.Result; if (result.IsSuccessStatusCode) { // Send mail MailInfo mail = new MailInfo { mailTo = inUser.email, mailSubject = "Active your account in IFM MES", mailMessage = string.Format(@"Click the link below for active your account: {0}/account/activeuser/?token={1}", baseURI, tokenActive) }; SendMail.SendMailAuto(mail); ViewData["Message"] = "Your account is registed successful! Please check mail for active it!"; return(RedirectToAction(nameof(Login))); } else { ViewData["Message"] = string.Format("Register failure! \n {0}", result.Content.ReadAsStringAsync().GetAwaiter().GetResult()); return(View()); } } } catch { return(View()); } }
public IActionResult Login(aa0001 aa0001, bool rememberMe) { if (!ModelState.IsValid) { return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c11)) { ViewData["Error"] = "Please enter your username for login!"; return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c23) || aa0001.aa0001c23.Length < 6) { ViewData["Error"] = "Password must contain at least 6 characters!"; return(View()); } HttpClientHandler clienthandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true }; HttpClient client = new HttpClient(clienthandler) { BaseAddress = new Uri(baseUrl) }; var contentType = new MediaTypeWithQualityHeaderValue("application/json"); client.DefaultRequestHeaders.Accept.Add(contentType); string stringData = JsonConvert.SerializeObject(aa0001); var contentData = new StringContent(stringData, Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync("/aa0001/security", contentData).Result; string stringResponse = response.Content.ReadAsStringAsync().Result; JWT jwtResult = JsonConvert.DeserializeObject <JWT>(stringResponse); HttpContext.Session.SetString("token", jwtResult.Token); if (response.StatusCode == System.Net.HttpStatusCode.OK) { var claims = new List <Claim>(); claims.Add(new Claim(ClaimTypes.Name, aa0001.aa0001c11)); if (aa0001.aa0001c17.Contains(",")) { string[] roles = aa0001.aa0001c17.Split(','); foreach (string role in roles) { claims.Add(new Claim(ClaimTypes.Role, role)); } } else { claims.Add(new Claim(ClaimTypes.Role, aa0001.aa0001c17)); } var identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme); var principal = new ClaimsPrincipal(identity); var props = new AuthenticationProperties(); props.IsPersistent = rememberMe; HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal, props).Wait(); ViewData["Message"] = string.Format("Wellcome {0} log in!", aa0001.aa0001c11); return(View()); } else { ViewData["Error"] = jwtResult; return(View()); } }
public IActionResult Register(aa0001 aa0001) { #region CHECK FIELDS if (!ModelState.IsValid) { return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c11)) { ViewData["Error"] = "Please enter your username for register!"; return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c12)) { ViewData["Error"] = "Please enter your first name for register!"; return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c14)) { ViewData["Error"] = "Please enter your email for register!"; return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c23) || aa0001.aa0001c23.Length < 6) { ViewData["Error"] = "Password must contain at least 6 characters!"; return(View()); } if (string.IsNullOrEmpty(aa0001.aa0001c24) || aa0001.aa0001c24 != aa0001.aa0001c23) { ViewData["Error"] = "Password and confirm password are not match!"; return(View()); } #endregion //string salt = EncryptData.RandomSalt(12); //aa0001.aa0001c05 = aa0001.aa0001c11; //aa0001.aa0001c06 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //aa0001.aa0001c16 = "False"; //aa0001.aa0001c17 = "None"; //aa0001.aa0001c23 = EncryptData.StringToHash(aa0001.aa0001c23, salt, MD5.Create()); //_context.aa0001.Add(aa0001); //_context.SaveChanges(); HttpClientHandler clienthandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true }; HttpClient client = new HttpClient(clienthandler) { BaseAddress = new Uri(baseUrl) }; var contentType = new MediaTypeWithQualityHeaderValue("application/json"); client.DefaultRequestHeaders.Accept.Add(contentType); string stringData = JsonConvert.SerializeObject(aa0001); var contentData = new StringContent(stringData, Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync("/aa0001/account", contentData).Result; string stringResponse = response.Content.ReadAsStringAsync().Result; string result = JsonConvert.DeserializeObject <string>(stringResponse); if (response.StatusCode == System.Net.HttpStatusCode.OK) { MailInfo mail = new MailInfo { mailTo = aa0001.aa0001c14, mailSubject = "Active your account in IFM MES", mailMessage = string.Format(@"Click the link below for active your account: {0}/account/activeuser/?email={1}", baseUrl, aa0001.aa0001c14) }; SendMail.SendMailAuto(mail); ViewData["Message"] = "Your account is registed! Please check mail for active it!"; return(View()); } else { ViewData["Error"] = result; return(View(aa0001)); } }
private bool ValidateUser(aa0001 aa0001) { aa0001.aa0001c23 = EncryptData.StringToHash(aa0001.aa0001c23, aa0001.aa0001c21, MD5.Create()); return(_context.aa0001.Any(a => a.aa0001c11 == aa0001.aa0001c11 && a.aa0001c23 == aa0001.aa0001c23)); }