Пример #1
0
        public async Task <ClaimsIdentity> Login(DTOLoginViewModel dtoLoginViewModel)
        {
            ClaimsIdentity claim = null;
            var            user  = await Database.UserManager.FindAsync(dtoLoginViewModel.Email, dtoLoginViewModel.Password);

            if (user != null && user.EmailConfirmed)
            {
                claim = await Database.UserManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);
            }
            return(claim);
        }
Пример #2
0
        private void CheckLogin()
        {
            DTOLoginViewModel dtoLoginViewModel = new DTOLoginViewModel
            {
                Login    = LoginsBox.Text,
                Password = PasswordBox.Text
            };
            var responce = UserService.Login(dtoLoginViewModel);

            if (responce == "user" || responce == "admin")
            {
                if (responce == "admin")
                {
                    Admin = true;
                }
                LoginUser         = LoginsBox.Text;
                this.DialogResult = DialogResult.OK;
                this.Close();
            }
            Password_Validation.Text = responce;
        }
Пример #3
0
        public string Login(DTOLoginViewModel dtoLoginViewModel)
        {
            var userCurrent = Database.GetManager(dtoLoginViewModel.Login);

            if (userCurrent.LockoutEnabled && userCurrent.LockoutEndDateUtc != null)
            {
                return("User is locked. For unlock contact your administrator.");
            }
            if (Database.UserManager.CheckPassword(userCurrent, dtoLoginViewModel.Password))
            {
                if (!userCurrent.LockoutEnabled || userCurrent.AccessFailedCount > 0)
                {
                    if (userCurrent.AccessFailedCount != 3)
                    {
                        userCurrent.AccessFailedCount = 3;
                        Database.SaveUser(userCurrent, EntityState.Modified);
                    }
                    return(Database.UserManager.GetRoles(userCurrent.Id).First());
                }
            }
            else
            {
                if (userCurrent.LockoutEnabled)
                {
                    userCurrent.AccessFailedCount--;
                    if (userCurrent.AccessFailedCount == 0)
                    {
                        userCurrent.LockoutEndDateUtc = DateTime.Parse("01-01-2999");
                    }

                    Database.SaveUser(userCurrent, EntityState.Modified);
                    return("Login or password incorrect. Input attempts: " + userCurrent.AccessFailedCount);
                }
                return("Login or password incorrect.");
            }
            return("Close this window and reset program.");
        }