protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); sesionUsuario = SesionUsuario.Instancia; // Por si no existe la base de datos var docsFolder = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments); directorioBD = System.IO.Path.Combine(docsFolder, "db_adonet.db"); if (!File.Exists(directorioBD)) { string cad = string.Empty; cad = sesionUsuario.CrearBaseDeDatos(); Toast.MakeText(this, cad, ToastLength.Short) /*.Show()*/; } // De encontrarse que el usuario inició sesión previamente, saltar a la siguiente actividad. if (sesionUsuario.Conectado()) { var intent = new Intent(this, typeof(ControladorInicioPartido)); StartActivity(intent); Finish(); } // Si el usuario no inició sesión, mostrarle vistas relacionadas al inicio de sesión. else { SetContentView(Resource.Layout.IuInicioSesion); FindViewById <Button>(Resource.Id.btnLogin).Click += ControladorInicioSesion_Click; } }
protected void BtnEntrar_Click(object sender, EventArgs e) { //Inicia bool login = SesionUsuario.IniciarSesion(TxtCorreo.Text.Trim(), TxtContraseña.Text.Trim()); if (login) { int id = Datos.ObtenerID(TxtCorreo.Text.Trim()); int tipo_usuario = Datos.ObtenerTipoUsuario(Convert.ToInt16(id)); if (tipo_usuario == 1) { int estado_usuario = Datos.ObtenerEstadoUsuario(Convert.ToInt16(id)); if (estado_usuario == 1) { Session["usuario"] = id; string id_usuario = id.ToString(); FormsAuthentication.SetAuthCookie(id_usuario, false); Response.Redirect("Datos.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } else if (estado_usuario == 3) { } else { Session["usuario"] = id; string id_usuario = id.ToString(); FormsAuthentication.SetAuthCookie(id_usuario, false); Response.Redirect("MiDinero.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } } if (tipo_usuario == 2) { Session["usuario"] = id; string id_usuario = id.ToString(); FormsAuthentication.SetAuthCookie(id_usuario, false); Response.Redirect("Vender.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } if (tipo_usuario == 3) { Session["usuario"] = id; string id_usuario = id.ToString(); FormsAuthentication.SetAuthCookie(id_usuario, false); Response.Redirect("Administrar.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } } else { LbError.Visible = true; LbError.Text = "El Correo y/o Contraseña son incorrectos"; } }
public SiteMapNodeCollection ObtenerPrimerGeneracion(SiteMapNode nodoPadre) { var hijos = nodoPadre.ChildNodes; var listaHijos = new SiteMapNodeCollection(); foreach (var hijoObj in hijos) { var hijo = (SiteMapNode)hijoObj; if (hijo.ParentNode != nodoPadre) { continue; } if (!hijo.Url.Contains("javascript")) { var url = hijo.Url.Split('/'); var accion = url[2]; var controlador = url[1]; if (SesionUsuario.PermitirMenu(accion, controlador)) { listaHijos.Add(hijo); } } else { listaHijos.Add(hijo); } } return(listaHijos); }
public LoginData Login(string userName, string contrasena, string ip) { var usuario = _repositorioUsuario.ObtenerUsuarioParaLogin(new FiltroUsuarioParaLogin(userName, Encriptar.HashPassword(contrasena))); if (usuario == null) { return new LoginData { Mensaje = "Usuario y/o contraseña inválidas." } } ; else if (!usuario.EstaActivo) { return new LoginData { Mensaje = "Su usuario no esta activo para usar el software." } } ; else if (usuario.EstaBloqueado) { return new LoginData { Mensaje = "Su usuario está bloqueado." } } ; else if (usuario.Empresas.Count == 0) { return new LoginData { Mensaje = "Su usuario no tiene empresas asociadas." } } ; else if (usuario.Roles.Count == 0) { return new LoginData { Mensaje = "Su usuario no tiene roles asociados." } } ; else { var sesion = new SesionUsuario { FechaInicio = DateTime.Now, IdUsuario = usuario.IdUsuario, Ip = ip }; _repositorioSesionUsuario.Agregar(sesion); return(new LoginData { Mensaje = "Ok.", FueOk = true, IdUsuario = usuario.IdUsuario, UserName = userName, NombreUsuario = $"{usuario.Apellidos} {usuario.Nombres}", IdSesion = sesion.IdSesion, Empresas = usuario.Empresas, Operaciones = ObtenerOperaciones(usuario.Roles) }); } }
public string ValidarSesion(string stObj) { JObject Jobj; clsUsuario objClsUsuario; ValidarSesion objValidarSesion; SesionUsuario objSesion; try { Jobj = JObject.Parse(stObj); objValidarSesion = new ValidarSesion(); string stUsuario = Jobj["usu_username"].ToString(); string stPassword = Jobj["usu_password"].ToString(); // Se llama al método para validar la sesión de usuario objClsUsuario = new clsUsuario(); objValidarSesion = objClsUsuario.ValidarSesion(stUsuario, stPassword); /* Si es diferente de 'null' (encuentra un registro), sigue con el proceso seteando la bandera en 'true'. * Sino, setea la bandera en 'false' y termina el proceso. */ if (objValidarSesion != null) { objValidarSesion.usu_existe = true; // Se genera y registra la sesión de usuario objSesion = new SesionUsuario(); objSesion.su_fechaInicio = Jobj["su_fechaInicio"].ToString(); objSesion.su_horaInicio = Jobj["su_horaInicio"].ToString(); objSesion.su_IDUsuario = objValidarSesion.usu_IDUsuario; objClsUsuario = new clsUsuario(); objSesion = objClsUsuario.RegistrarSesionUsuario(objSesion); // Se terminan de asignar los valores restantes al objeto de validación de sesión objValidarSesion.usu_IDSesion = objSesion.su_IDSesion; } else { objValidarSesion.usu_existe = false; } return(JsonConvert.SerializeObject(objValidarSesion)); } catch (Exception ex) { return(ex.ToString()); } finally { Jobj = null; objClsUsuario = null; objValidarSesion = null; objSesion = null; } }
public void StartUserSession(Usuario usuario) { var session = new SesionUsuario { Id = Guid.NewGuid().ToString(), Usuario = usuario, FechaHoraCreacion = DateTimeOffset.UtcNow, FechaHoraExpiracion = DateTimeOffset.UtcNow.AddMinutes(5) }; _db.SesionUsuario.Add(session); _db.SaveChanges(); // TODO hacky? _activeUserSessionTask = new Lazy <SesionUsuario>(() => session); _actionContext.HttpContext.Response.Cookies.Append(SessionCookieName, session.Id); }
public string MenuHijo() { var nodoPadre = ObtenerNodoPadre(SesionUsuario.CurrentNode); if (nodoPadre == SiteMap.Provider.RootNode) { return("<ul class='menu-hijo'></ul>"); } var hijos = nodoPadre.ChildNodes; var listaHijos = new List <SiteMapNode>(); foreach (var hijoObj in hijos) { var hijo = (SiteMapNode)hijoObj; if (hijo.ParentNode == nodoPadre) { listaHijos.Add(hijo); } } var cadena = "<ul class='menu-hijo'>"; foreach (var nodo in listaHijos) { var url = nodo.Url.Split('/'); var accion = url[2]; var controlador = url[1]; if (!SesionUsuario.PermitirMenu(accion, controlador)) { continue; } cadena += "<li>"; cadena += "<a href='" + nodo.Url + "'>"; cadena += nodo.Title; cadena += "</a>"; cadena += "</li>"; } cadena += "</ul>"; return(cadena); }
/// <summary> /// Obtiene todas las cartas de la base de datos y las almacena en assets. /// </summary> /// <param name="callback">Callback.</param> private void ObtenerAssets(CallBack callback) { reference.Child("assets").GetValueAsync().ContinueWith(task => { if (task.IsFaulted) { Debug.Log("Excepcion: " + task.Exception); callback.Invoke(SesionUsuario.GetErrorMessage(task.Exception)); assets = null; } else if (task.IsCanceled) { Debug.Log("Excepcion: " + task.Exception); callback.Invoke(SesionUsuario.GetErrorMessage(task.Exception)); assets = null; } else if (task.IsCompleted) { //Assigno los assets a una variable global assets = task.Result; callback.Invoke(""); } }); }
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) { Error oError = new Error(); try { string usuarioLogin = context.UserName; var identity = new ClaimsIdentity(context.Options.AuthenticationType); context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" }); IFormCollection parameters = await context.Request.ReadFormAsync(); SesionUsuario sesionUsuario = new SesionUsuario(); string GUID = Assembly.GetExecutingAssembly().GetType().GUID.ToString().ToUpper(); Usuario userData = new Usuario() { usuario = context.UserName }; identity.AddClaim(new Claim(ClaimTypes.Name, usuarioLogin)); identity.AddClaim(new Claim(ClaimTypes.GivenName, "nombre")); identity.AddClaim(new Claim(ClaimTypes.Country, context.Scope[0].ToString())); //Pais del usuario identity.AddClaim(new Claim(ClaimTypes.Locality, context.UserName.ToString())); //Localidad usuario identity.AddClaim(new Claim(ClaimTypes.System, context.Request.RemoteIpAddress)); //Ip del cliente identity.AddClaim(new Claim(ClaimTypes.Hash, new Utils().GenerateStrongPassword(50))); //Hash para logs identity.AddClaim(new Claim(ClaimTypes.GroupSid, userData.AutenticaAD.ToString())); //Tipo de autenticación var ticket = new AuthenticationTicket(identity, null); context.Validated(ticket); } catch (System.Exception ex) { context.SetError("ERROR - " + ex.Message); return; } }
public ActionResult Index(LoginQuery query) { var centro = contexto.Centros.FirstOrDefault(c => c.IdCentro == query.Centro); if (centro == null) { ViewBag.MensajeError = "Centro inválido."; return(View()); } string action = null; var sesion = new SesionUsuario() { Centro = centro }; if (CryptoTools.ValidateHash(query.Clave, centro.SaltUsuario, centro.ClaveUsuario)) { action = "Create"; sesion.EsAdmin = false; } else if (CryptoTools.ValidateHash(query.Clave, centro.SaltAdmin, centro.ClaveAdmin)) { action = "Incidencias"; sesion.EsAdmin = true; } else { ViewBag.MensajeError = "Contraseña incorrecta."; SesionUsuario = null; return(View()); } SesionUsuario = sesion; return(RedirectToAction(action)); }
public string RegistrarCierreSesion(string stObj) { JObject Jobj; SelectSesion objSelectSesion; SesionUsuario objSesion; clsUsuario objClsUsuario; try { Jobj = JObject.Parse(stObj); objClsUsuario = new clsUsuario(); long IDSesion = Convert.ToInt64(Jobj["su_IDSesion"]); objSelectSesion = objClsUsuario.SelectSesion(IDSesion); objSesion = new SesionUsuario(); objSesion.su_IDSesion = objSelectSesion.su_IDSesion; objSesion.su_fechaInicio = objSelectSesion.su_fechaInicio; objSesion.su_horaInicio = objSelectSesion.su_horaInicio; objSesion.su_fechaFin = Jobj["su_fechaFin"].ToString(); objSesion.su_horaFin = Jobj["su_horaFin"].ToString(); objSesion.su_IDUsuario = objSelectSesion.su_IDUsuario; return(JsonConvert.SerializeObject(objClsUsuario.ActualizarSesionUsuario(objSesion))); } catch (Exception ex) { return(ex.ToString()); } finally { objClsUsuario = null; Jobj = null; objSesion = null; } }
public void Setup() { SesionUsuario = new SesionUsuario(); }
public ActionResult Logout() { SesionUsuario = null; return(RedirectToAction("Index")); }
private void btnLogin_Click(object sender, EventArgs e) { if (this.username.Text == "") { MessageBox.Show("Debe ingresar un usuario", "Login Usuario"); return; } if (this.password.Text == "") { MessageBox.Show("Debe ingresar una contraseña", "Login Usuario"); return; } var con = new Conexion(); con.query = "SELECT * FROM ONEFORALL.USUARIOS WHERE USER_USUARIO = '" + username.Text + "' AND USER_PASSWORD='******' AND USER_ACTIVO = 1 ;"; con.leer(); if (con.leerReader()) { MessageBox.Show("Bienvenido " + con.lector.GetString(1) + "!"); SesionUsuario.user.id = con.lector.GetInt32(0); SesionUsuario.user.username = con.lector.GetString(1); con.cerrarConexion(); con.query = "UPDATE ONEFORALL.USUARIOS SET USER_INTENTOS = 0 WHERE USER_ID =" + SesionUsuario.usuario.id; con.ejecutar(); if (!SesionUsuario.usuario.tieneRolesActivos()) { MessageBox.Show("El usuario no posee Roles activos", "Login Usuario", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } //SesionUsuario.user.cargarFuncionalidadesRol(); this.Hide(); con.query = string.Format("SELECT COUNT(*) FROM ONEFORALL.USUARIO_X_ROL WHERE USERX_ID = {0}", SesionUsuario.user.id); con.leer(); if (con.leerReader()) { if (con.lector.GetInt32(0) > 1) { new ElegirSucursalYRol().Show(); } else { con.cerrarConexion(); con.query = string.Format("SELECT COUNT(*) FROM ONEFORALL.USUARIO_X_SUCURSAL WHERE USERX_ID = {0}", SesionUsuario.user.id); con.leer(); if (con.leerReader()) { if (con.lector.GetInt32(0) > 1) { new ElegirSucursalYRol().Show(); SesionUsuario.usuario.cargarFuncionalidadesRol(); } else { SesionUsuario.CargarSucursalYRol(); new MenuPrincipal().ShowDialog(); } } } con.cerrarConexion(); } } else { con.query = "SELECT * FROM ONEFORALL.USUARIOS WHERE USER_USUARIO = '" + username.Text + "';"; var intentosfallidos = 0; con.cerrarConexion(); con.leer(); if (con.leerReader()) { intentosfallidos = con.lector.GetByte(4); if (!con.lector.GetBoolean(3)) { MessageBox.Show("Su usuario se encuentra deshabilitado", "Login Usuario"); return; } con.cerrarConexion(); con.query = "UPDATE ONEFORALL.USUARIOS SET USER_INTENTOS = USER_INTENTOS + 1 WHERE USER_USUARIO='" + username.Text + "';"; con.ejecutar(); if (intentosfallidos >= 3) { con.query = "UPDATE ONEFORALL.USUARIOS SET USER_ACTIVO = 0 WHERE USER_USUARIO='" + username.Text + "';"; con.ejecutar(); } MessageBox.Show("Ingrese nuevamente la contraseña", "Login Usuario"); con.cerrarConexion(); return; } else { MessageBox.Show("El usuario no existe", "Login Usuario"); con.cerrarConexion(); return; } } }