public ActionResult AlterarSenha(AlterarSenhaViewModel viewmodel) { if (!ModelState.IsValid) { return(View()); } //CAPTURA O USUARIO QUE ESTÁ LOGADO var identity = User.Identity as ClaimsIdentity; var login = identity.Claims.FirstOrDefault(c => c.Type == "Login").Value; var usuario = db.usuarios.FirstOrDefault(u => u.Login == login); if (Hash.GerarHash(viewmodel.SenhaAtual) != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "Senha incorreta"); return(View()); } usuario.Senha = Hash.GerarHash(viewmodel.NovaSenha); db.Entry(usuario).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); TempData["Mensagem"] = "Senha alterada com sucesso."; return(RedirectToAction("Index", "Painel")); }
public async Task <IActionResult> PutUsuario(int id, Usuario Usuario) { if (id != Usuario.Id) { return(BadRequest()); } _context.Entry(Usuario).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UsuarioExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public ActionResult AlterarSenha(AlterarSenhaViewModel model) { if (!ModelState.IsValid) { return(View()); } var identity = User.Identity as ClaimsIdentity; //Obtém o login do usuário autenticado var login = identity.Claims.FirstOrDefault(x => x.Type == "Login").Value; //Obtém o usuário do banco de dados. var usuario = db.Usuarios.FirstOrDefault(x => x.Login == login); //Se a senha atual corresponde com a senha do usuário autenticado. if (Hash.GerarHash(model.SenhaAtual) != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "Senha incorreta"); return(View()); } usuario.Senha = Hash.GerarHash(model.NovaSenha); db.Entry(usuario).State = EntityState.Modified; db.SaveChanges(); TempData["Mensagem"] = "A senha foi alterada com sucesso."; return(RedirectToAction("Index", "Home")); }
public ActionResult AlterarSenha(AlterarSenhaViewModel viewModel) { if (!ModelState.IsValid) { return(View()); } //CAPTURADANDO O LOGIN PARA EFETUAR A TROCA DA SENHA var identity = User.Identity as ClaimsIdentity; var login = identity.Claims.FirstOrDefault(c => c.Type == "Login").Value; var usuario = db.Usuarios.FirstOrDefault(u => u.Login == login); //COMPARANDO SE A SENHA ATUAL DIGITADA É A MESMA CONTIDA NO BANCO if (Hash.GerarHash(viewModel.SenhaAtual) != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "Senha incorreta"); return(View()); } //A SENHA ESTANADO CORRETA usuario.Senha = Hash.GerarHash(viewModel.NovaSenha); db.Entry(usuario).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); TempData["Mensagem"] = "Senha alterada com sucesso"; return(RedirectToAction("Index", "Painel")); }
public ActionResult AlterarSenha(AlterarSenhaViewModel viewModel) { if (!ModelState.IsValid) { return(View()); } var identity = User.Identity as ClaimsIdentity; var login = identity.Claims.FirstOrDefault(x => x.Type == "Login").Value; var usuario = ctx.Usuarios.FirstOrDefault(x => x.Login == login); if (Hash.GerarHash(viewModel.SenhaAtual) != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "Senha Incorreta"); return(View()); } usuario.Senha = Hash.GerarHash(viewModel.NovaSenha); ctx.Entry(usuario).State = EntityState.Modified; ctx.SaveChanges(); TempData["Mensagem"] = "Senha alterada com sucesso"; return(RedirectToAction("Index", "Painel")); }
public ActionResult AlterarSenha(AlterarSenhaViewModel alterarSenhaView) { if (!ModelState.IsValid) { return(View()); } //using System.Security.Claims; var identity = User.Identity as ClaimsIdentity; //Captura o usuário logado, fazendo o cast (conversão) para o tipo ClaimsIdentity var login = identity.Claims.FirstOrDefault(u => u.Type == "Login").Value; var usuario = db.Usuarios.FirstOrDefault(u => u.Login == login); if (alterarSenhaView.SenhaAtual.CriptografarSenha() != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "A Senha digitada está incorreta!"); return(View()); } if (alterarSenhaView.NovaSenha.CriptografarSenha() == usuario.Senha) { ModelState.AddModelError("NovaSenha", "A Senha nova está igual antiga!"); return(View()); } usuario.Senha = alterarSenhaView.NovaSenha.CriptografarSenha(); db.Entry(usuario).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); TempData["Mensagem"] = "Senha alterada com sucesso!"; return(RedirectToAction("Index", "Painel")); }
public async Task <IActionResult> PutUsuario([FromRoute] long id, [FromBody] Usuario usuario) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != usuario.Id) { return(BadRequest()); } _context.Entry(usuario).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UsuarioExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public ActionResult AlterarSenha(AlterarSenhaViewModel viewmodel) { //validamos o ModelState para verificar as regras definidas via Data Annotationsk if (!ModelState.IsValid) { return(View()); } //capturamos o usuário que está logado atualmente; var identity = User.Identity as ClaimsIdentity; //obtemos o login do usuário conectado; var login = identity.Claims.FirstOrDefault(c => c.Type == "Login").Value; //filtramos no banco o usuário logado para que possamos comparar sua senha com a que foi digitada; var usuario = db.Usuarios.FirstOrDefault(u => u.Login == login); //caso a senha digitada esteja incorreta, retornamos para a view com esse erro; if (Hash.GerarHash(viewmodel.SenhaAtual) != usuario.Senha) { ModelState.AddModelError("SenhaAtual", "Senha incorreta"); return(View()); } //alteramos a senha do usuário e gravamos essa modificação no banco de dados; usuario.Senha = Hash.GerarHash(viewmodel.NovaSenha); db.Entry(usuario).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); TempData["Mensagem"] = "Senha alterada com sucesso"; //Retornamos para a página inicial do painel. return(RedirectToAction("Index", "Painel")); }
public void Put([FromBody] Usuarios usuario) { context.Entry(usuario).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); }