public async Task <Response> CambiarContraseñaUsuariosExternos([FromBody] CambiarContrasenaViewModel cambiarContrasenaViewModel) { try { var salida = CodificarHelper.SHA512(new Codificar { Entrada = cambiarContrasenaViewModel.ContrasenaActual }).Salida; var usuario = await db.Adscpassw.Where(x => x.AdpsLogin.ToUpper() == cambiarContrasenaViewModel.Usuario.ToUpper() && x.AdpsPasswPoint == salida).FirstOrDefaultAsync(); if (usuario == null) { return(new Response { IsSuccess = false, Message = Mensaje.UsuariooContrasenaIncorrecto }); } if (usuario.AdpsTipoUso != Constantes.UsuarioInterno) { SincorizarContrasenaUsuarioExternos(cambiarContrasenaViewModel.Usuario, cambiarContrasenaViewModel.ConfirmacionContrasena); return(new Response { IsSuccess = true, Message = Mensaje.CambioContrasenaExito }); } return(new Response { IsSuccess = false, Message = Mensaje.NoHabilitadoCambioContrasena }); } catch (Exception) { throw; } }
private async Task <Response> AutenticarBDD(Adscpassw usuario, Login login) { var salida = CodificarHelper.SHA512(new Codificar { Entrada = login.Contrasena }).Salida; var existeLogin = db.Adscpassw.Where(x => x.AdpsLogin.ToUpper() == login.Usuario.ToUpper() && x.AdpsPasswPoint == salida).FirstOrDefault(); if (existeLogin == null) { usuario.AdpsIntentos = usuario.AdpsIntentos + 1; db.Entry(usuario).State = EntityState.Modified; await db.SaveChangesAsync(); return(new Response { IsSuccess = false, Message = Mensaje.UsuariooContrasenaIncorrecto, Resultado = "", }); } usuario.AdpsIntentos = 0; db.Entry(usuario).State = EntityState.Modified; return(new Response { IsSuccess = true, Message = "Ok", Resultado = existeLogin, }); }
public async Task <ActionResult> Create(Agente agente) { if (!ModelState.IsValid) { ViewBag.SectorId = new SelectList(await obtenerSectoresPorEmpresa(), "SectorId", "NombreSector", agente.SectorId); return(View(agente)); } IdentityPersonalizado ci = (IdentityPersonalizado)HttpContext.User.Identity; string nombreUsuario = ci.Identity.Name; var administrador = new Administrador { Nombre = nombreUsuario }; administrador = await ProveedorAutenticacion.GetUser(administrador); var codificar = CodificarHelper.SHA512(new Codificar { Entrada = agente.Nombre }); agente.Contrasena = codificar.Salida; agente.EmpresaId = administrador.EmpresaId; var response = await ApiServicio.InsertarAsync(agente, new Uri(WebApp.BaseAddress), "api/Agentes/CreateAgente"); if (!response.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } return(RedirectToAction("Index", "Agentes")); }
public async Task <ActionResult> Create(Vendedor vendedor) { if (!ModelState.IsValid) { return(View(vendedor)); } IdentityPersonalizado ci = (IdentityPersonalizado)HttpContext.User.Identity; string nombreUsuario = ci.Identity.Name; var administrador = new Administrador { Nombre = nombreUsuario }; administrador = await ProveedorAutenticacion.GetUser(administrador); var codificar = CodificarHelper.SHA512(new Codificar { Entrada = vendedor.Nombre }); vendedor.Contrasena = codificar.Salida; vendedor.EmpresaId = administrador.EmpresaId; var response = await ApiServicio.InsertarAsync(vendedor, new Uri(WebApp.BaseAddress), "api/Vendedors/CreateVendedor"); if (!response.IsSuccess) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } return(RedirectToAction("Index", "Vendedores")); }
public async Task <Response> Login([FromBody] Login login) { try { var respuesta = new Response(); var usuario = db.Adscpassw.Where(x => x.AdpsLogin.ToUpper() == login.Usuario.ToUpper()).FirstOrDefault(); if (usuario == null) { return(new Response { IsSuccess = false, Message = Mensaje.UsuariooContrasenaIncorrecto }); } if (usuario.AdpsTipoUso == Constantes.UsuarioInterno) { respuesta = _authService.Login(login.Usuario, login.Contrasena); if (respuesta.IsSuccess) { var salida = CodificarHelper.SHA512(new Codificar { Entrada = login.Contrasena }).Salida; if (salida != usuario.AdpsPasswPoint) { SincorizarContrasena(login.Usuario, login.Contrasena); } return(new Response { IsSuccess = true }); } else { return(new Response { IsSuccess = false, Message = Mensaje.UsuariooContrasenaIncorrecto }); } } respuesta = ValidarFechaCaducidad(usuario); if (!respuesta.IsSuccess) { return(respuesta); } respuesta = ValidarNumeroIntentos(usuario); if (!respuesta.IsSuccess) { return(respuesta); } respuesta = await AutenticarBDD(usuario, login); if (!respuesta.IsSuccess) { return(respuesta); } usuario.AdpsIntentos = 0; db.Entry(usuario).State = EntityState.Modified; await db.SaveChangesAsync(); return(respuesta); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwSeguridad), ExceptionTrace = ex, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), Message = ex.Message, UserName = login.Usuario, }); return(new Response { IsSuccess = false, Message = ex.Message, }); throw; } }
public async Task <Response> PostAdscpassw([FromBody] Adscpassw adscpassw) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = Mensaje.ModeloInvalido }); } var respuesta = Existe(adscpassw); if (!respuesta.IsSuccess) { adscpassw.AdpsFechaCambio = DateTime.Now; adscpassw.AdpsFechaVencimiento = DateTime.Now.AddMonths(3); adscpassw.AdpsIntentos = 0; adscpassw.AdpsPassword = adscpassw.AdpsLogin; adscpassw.AdpsPasswCg = adscpassw.AdpsLogin; adscpassw.AdpsPreguntaRecuperacion = Mensaje.UsuarioSinConfirmar; adscpassw.AdpsRespuestaRecuperacion = Mensaje.UsuarioSinConfirmar; adscpassw.AdpsPasswPoint = CodificarHelper.SHA512(new Codificar { Entrada = adscpassw.AdpsLogin }).Salida; db.Adscpassw.Add(adscpassw); await db.SaveChangesAsync(); SincorizarContrasena(adscpassw.AdpsLogin, adscpassw.AdpsLogin); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio, Resultado = adscpassw, }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwSeguridad), ExceptionTrace = ex, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }