예제 #1
0
        public void ShouldHashPasswordSuccess()
        {
            string password = "******";
            var    result   = passwordEncryption.HashPassword(password);

            // Verify that generated salt and the final hash result are not null
            Assert.NotNull(result.salt);
            Assert.NotNull(result.hashed);
        }
예제 #2
0
        public async Task <bool> RegisterUser(RegisterUsers registerUsers)
        {
            var usercount = await _context.RegisterUser.Where(user => user.Username == registerUsers.Username &&
                                                              user.Password == PasswordEncryption.HashPassword(registerUsers.Password) &&
                                                              user.ApiKey == registerUsers.ApiKey &&
                                                              user.Email == registerUsers.Email)
                            .CountAsync();

            if (usercount > 0)
            {
                return(true);
            }
            else
            {
                var user = new RegisterUsers
                {
                    Username   = registerUsers.Username,
                    Password   = PasswordEncryption.HashPassword(registerUsers.Password),
                    Email      = registerUsers.Email,
                    ApiKey     = registerUsers.ApiKey,
                    SignupDate = DateTime.Now
                };

                await _context.RegisterUser.AddAsync(user);

                await _context.SaveChangesAsync();

                return(false);
            }
        }
예제 #3
0
파일: Login.cs 프로젝트: Ezeji/WebApiTask
        public async Task <bool> LoginUser(LoginUsers loginUsers)
        {
            var usercount = await _context.RegisterUser.Where(user => user.Username == loginUsers.Username &&
                                                              user.Password == PasswordEncryption.HashPassword(loginUsers.Password) &&
                                                              user.ApiKey == loginUsers.ApiKey)
                            .CountAsync();

            if (usercount > 0)
            {
                var loginUser = new LoginUsers
                {
                    Username  = loginUsers.Username,
                    Password  = PasswordEncryption.HashPassword(loginUsers.Password),
                    ApiKey    = loginUsers.ApiKey,
                    LoginDate = DateTime.Now
                };

                await _context.LoginUser.AddAsync(loginUser);

                await _context.SaveChangesAsync();

                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #4
0
        public async Task <string> ResetUserPassword(ResetPassword resetPassword)
        {
            var user = await _context.RegisterUser.Where(user => user.Email == resetPassword.Email)
                       .FirstOrDefaultAsync();

            if (user != null)
            {
                user.Password = PasswordEncryption.HashPassword(resetPassword.NewPassword);
                await _context.SaveChangesAsync();

                return("New password updated successfully...");
            }
            else
            {
                return("Account doesn't exist...");
            }
        }