public override void OnAuthorization(AuthorizationContext filterContext)
    {
        try
        {
            string userRol = this.Roles;

            if (filterContext == null)
            {
                throw new ArgumentNullException("AuthorizeFilterAttribute");
            }

            ValidationUser MO       = new ValidationUser();
            String         usuario  = filterContext.HttpContext.Session["usuario"].ToString();
            String         password = filterContext.HttpContext.Session["password"].ToString();

            String valor = MO.ValidaRoles(usuario, password, userRol);

            int access = MO.ValidaModulo(usuario, userRol);

            int roles = valor.IndexOf(RolActiveDirectory);
            if (roles == -1 || access == -1)
            {
                filterContext.Result = new ViewResult {
                    ViewName = "ErrorAcceso"
                };
            }
        }
        catch (Exception ex)
        {
            Logs.WriteErrorLog("Error en ingresar a dicha página: " + ex.ToString());
            filterContext.Result = new ViewResult {
                ViewName = "ErrorAcceso"
            };
        }
    }
    public int Authorize(string usuario, string password)
    {
        ValidationUser MO = new ValidationUser();

        String valor = MO.ValidaRoles(usuario, password, this.Roles);
        int    roles;
        int    credIncorrectas;

        if ((credIncorrectas = valor.LastIndexOf("Error de inicio de sesión: nombre de usuario desconocido o contraseña incorrecta.")) != -1)
        {
            return(2);
        }
        else if ((roles = valor.LastIndexOf(RolActiveDirectory)) != -1)
        {
            return(0);
        }
        else if (credIncorrectas == -1 && roles == -1)
        {
            return(1);
        }
        else
        {
            return(-1);
        }
    }
        public ActionResult Register([Bind(Include = "MaND,TenND,MatKhau,Email,SoDienThoai,DiaChi")] RegisterModel user)
        {
            WEBEntities1   db  = new WEBEntities1();
            ValidationUser val = new ValidationUser();

            NguoiDung nd = new NguoiDung();

            //nd.MaND = user.MaND;
            nd.TenND       = user.TenND;
            nd.MatKhau     = Encryptor.MD5Hash(user.MatKhau);
            nd.Email       = user.Email;
            nd.SoDienThoai = user.SoDienThoai;
            nd.DiaChi      = user.DiaChi;


            if (ModelState.IsValid)
            {
                if (!val.checkUser(user.TenND) || !val.checkEmail(user.Email))
                {
                    db.NguoiDungs.Add(nd);
                    db.SaveChanges();
                    //FormsAuthentication.RedirectFromLoginPage(user.TenND, false);
                    return(RedirectToAction("Register"));
                }
                else
                {
                    ModelState.AddModelError("Register", "Invalid user or password");
                }
            }
            return(View("Fail"));
        }
예제 #4
0
        public RegistrationModel(string login, string password, string confirmPassword)
        {
            ValidationUser validation = new ValidationUser(login, password, confirmPassword);

            validation.CheckUserLogin();
            validation.CheckUserPassword();

            Login           = login;
            Password        = password;
            ConfirmPassword = confirmPassword;
        }
예제 #5
0
        public void EditUser()
        {
            InputNewPassword();
            ConfirmNewPassword();

            ValidationUser validation = new ValidationUser(newPassword, confirmNewPassword);

            validation.CheckUserPassword();

            account.EditUser(newPassword);
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         if (ValidationUser.staffAcess(Convert.ToString(Session["loginidst"])) != null)
         {
         }
         else
         {
             Response.Redirect(@"\Views\LoginAdmin.aspx");
         }
     }
 }
예제 #7
0
        public SignInModel(string login, string password)
        {
            if (Directory.Exists(login))
            {
                ValidationUser validation = new ValidationUser(login, password, DirectoryForJson <UserDTO> .ReadJson(login + "\\" + login + ".json"));
                validation.CheckExistUser();

                Login    = login;
                Password = password;
            }
            else
            {
                throw new ValidationException("Такого пользователя не существует.", "");
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (ValidationUser.staffAcess(Convert.ToString(Session["loginidst"])) != null)
                {
                    DataContextDataContext Dtx = new DataContextDataContext();

                    var Booking = from b in Dtx.VW_Bookings select b;
                    GridviewBooking.DataSource = Booking;
                    GridviewBooking.DataBind();
                }
                else
                {
                    Response.Redirect(@"\Views\LoginAdmin.aspx");
                }
            }
        }
예제 #9
0
        public SignInModel(string login, string password)
        {
            if (Directory.Exists(login))
            {
                ValidationUser validation = new ValidationUser(login, password, DirectoryForJson <UserSignInDTO> .ReadJson(login + "\\" + login + ".json"));
                validation.CheckExistUser();
                Rank = "User";
            }

            else if (login == "admin" &&
                     password == "admin")
            {
                Rank = "Admin";
            }

            Login    = login;
            Password = password;
        }
예제 #10
0
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            try
            {
                ValidationUser MO = new ValidationUser();

                bool validated = MO.ValidateUser(model.User);

                if (validated)
                {
                    FormsAuthentication.SetAuthCookie(model.User, false);

                    var    authTicket      = new FormsAuthenticationTicket(1, model.User, DateTime.Now, DateTime.Now.AddMinutes(20), false, "");
                    string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
                    var    authCookie      = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                    HttpContext.Response.Cookies.Add(authCookie);
                    Session["usuario"]  = model.User.ToString();
                    Session["password"] = model.Password.ToString();

                    Logs.WriteErrorLog("Usuario registrado:" + model.User + "||");
                    return(RedirectToAction("Index", "Home"));
                }

                else
                {
                    ModelState.AddModelError("", "Usuario no es valido o el password no es correcto.");
                    return(View(model));
                }
            }
            catch
            {
                Logs.WriteErrorLog("Usuario sin acceso intentó ingresar:" + model.User + "||");
                return(View("ErrorAcceso"));
            }
        }
예제 #11
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (ValidationUser.staffAcess(Convert.ToString(Session["loginidst"])) != null)
                {
                    TxtCName.Text = Convert.ToString(Session["bookorder"]);

                    DataContextDataContext Dtx = new DataContextDataContext();
                    var result = (from bo in Dtx.VW_Bookings where bo.id_booking == Convert.ToInt32(TxtCName.Text) select bo).FirstOrDefault();
                    TxtCName.Text     = result.name;
                    TxtBDt.Text       = Convert.ToString(result.reservationDate);
                    TxtBTm.Text       = Convert.ToString(result.time) + ":00";
                    TxtSvcTp.Text     = result.service_type;
                    TxtVecDet.Text    = result.model;
                    TxtCNotes.Text    = result.customer_notes;
                    TxtSvcType.Text   = result.service_type;
                    TxtSvcStatus.Text = result.status_type;
                    TxtStaff.Text     = result.staff_name;

                    //var restatus = from sst in Dtx.Service_Status select sst;
                    //DropDwSvcStatus.DataSource = restatus;
                    //DropDwSvcStatus.DataValueField = "id_status";
                    //DropDwSvcStatus.DataTextField = "status_type";
                    //DropDwSvcStatus.DataBind();

                    //var restaff = from st in Dtx.Staffs select st;
                    //DropDwStaff.DataSource = restaff;
                    //DropDwStaff.DataValueField = "id_staff";
                    //DropDwStaff.DataTextField = "staff_name";
                    //DropDwStaff.DataBind();
                }
                else
                {
                    Response.Redirect(@"\Views\LoginAdmin.aspx");
                }
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (ValidationUser.staffAcess(Convert.ToString(Session["loginidst"])) != null)
                {
                    TxtCName.Text = Convert.ToString(Session["bookorder"]);
                    DataContextDataContext Dtx = new DataContextDataContext();
                    var result = (from or in Dtx.VW_Orders where or.id_booking == Convert.ToInt32(TxtCName.Text) select or).FirstOrDefault();
                    TxtCName.Text     = result.name;
                    TxtSvcTp.Text     = result.service_type;
                    TxtSvcPrc.Text    = Convert.ToString(result.service_price);
                    TxtSvcStatus.Text = result.status_type;

                    var item = from f in Dtx.Items_Parts select f;
                    //DropDwSupplies.SelectedValue =
                }
                else
                {
                    Response.Redirect(@"\Views\LoginAdmin.aspx");
                }
            }
        }