Esempio n. 1
0
        public async Task ChangePasswordAsync(ChangeUserPasswordDto changeUserPasswordDto)
        {
            Guid userId = _currentUserService.UserId;

            var userEntity = await _tripFlipDbContext
                             .Users
                             .FirstOrDefaultAsync(user => user.Id == userId);

            EntityValidationHelper.ValidateEntityNotNull(
                userEntity, ErrorConstants.UserNotFound);

            bool passwordIsVerified = PasswordHasherHelper.VerifyPassword(
                changeUserPasswordDto.OldPassword, userEntity.PasswordHash);

            if (!passwordIsVerified)
            {
                throw new ArgumentException(ErrorConstants.PasswordNotVerified);
            }

            string newHashedPassword = PasswordHasherHelper.HashPassword(
                changeUserPasswordDto.NewPassword);

            userEntity.PasswordHash = newHashedPassword;

            await _tripFlipDbContext.SaveChangesAsync();
        }
Esempio n. 2
0
        public IActionResult ChangeUserPassword(ChangeUserPasswordDto changeUserPassword)
        {
            var result = _userService.ChangeUserPassword(changeUserPassword);

            if (result.Success)
            {
                return(Ok(result));
            }

            return(BadRequest(result));
        }
Esempio n. 3
0
        public async Task <bool> ChangePassword(ChangeUserPasswordDto payload)
        {
            var User = await _userManager.FindByIdAsync(payload.UserId.ToString());

            var result = await _userManager.ChangePasswordAsync(User, payload.CurrentPassword, payload.NewPassword);

            if (result.Succeeded)
            {
                return(true);
            }
            return(false);
            //throw new ApiException(result.Errors.FirstOrDefault().Description, 400);
        }
Esempio n. 4
0
        public async Task <IActionResult> ChangePassword(ChangeUserPasswordDto changeUserPassword)
        {
            var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;

            var user = await _userManager.FindByIdAsync(userId);

            var newPassword = _userManager.PasswordHasher.HashPassword(user, changeUserPassword.NewPassword);

            user.PasswordHash = newPassword;
            var result = await _userManager.UpdateAsync(user);

            if (result.Succeeded)
            {
                return(NoContent());
            }
            return(BadRequest(result.Errors));
        }
Esempio n. 5
0
        public IResult ChangeUserPassword(ChangeUserPasswordDto changePasswordDto)
        {
            byte[] passwordHash, passwordSalt;
            var    userToCheck = GetByEmail(changePasswordDto.Email);

            if (userToCheck.Data == null)
            {
                return(new ErrorResult("Kullanıcı bulunamadı"));
            }
            if (!HashingHelper.VerifyPasswordHash(changePasswordDto.OldPassword, userToCheck.Data.PasswordHash, userToCheck.Data.PasswordSalt))
            {
                return(new ErrorResult("Parola hatası"));
            }
            HashingHelper.CreatePasswordHash(changePasswordDto.NewPassword, out passwordHash, out passwordSalt);
            userToCheck.Data.PasswordHash = passwordHash;
            userToCheck.Data.PasswordSalt = passwordSalt;
            Update(userToCheck.Data);
            return(new SuccessResult("Parola değiştirildi"));
        }
        public IResult ChangeUserPassword(ChangeUserPasswordDto changePasswordDto)
        {
            byte[] passwordHash, passwordSalt;
            var    userToCheck = GetByEmail(changePasswordDto.Email);

            if (userToCheck.Data == null)
            {
                return(new ErrorResult(AspectMessages.UserNotFound));
            }
            if (!HashingHelper.VerifyPasswordHash(changePasswordDto.OldPassword, userToCheck.Data.PasswordHash, userToCheck.Data.PasswordSalt))
            {
                return(new ErrorResult(AspectMessages.PasswordError));
            }
            HashingHelper.CreatePasswordHash(changePasswordDto.NewPassword, out passwordHash, out passwordSalt);
            userToCheck.Data.PasswordHash = passwordHash;
            userToCheck.Data.PasswordSalt = passwordSalt;
            Update(userToCheck.Data);
            return(new SuccessResult(AspectMessages.PasswordChanged));
        }
Esempio n. 7
0
 public ChangeUserPasswordCommand(ChangeUserPasswordDto dto)
 {
     Dto = dto;
 }
 public async Task <IActionResult> ChangePassword(ChangeUserPasswordDto dto)
 {
     return(Ok(
                await _mediator.Send(new ChangeUserPasswordCommand(dto))
                ));
 }
Esempio n. 9
0
        /// <summary>
        /// 修改用户密码
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task ChangeUserPasswordAsync(ChangeUserPasswordDto input)
        {
            var user = await GetCurrentUserAsync();

            CheckErrors(await UserManager.ChangePasswordAsync(user.Id, input.CurrentPassword, input.NewPassword));
        }
Esempio n. 10
0
        public async Task <IActionResult> ChangePassword(ChangeUserPasswordDto payload)
        {
            var result = await _authenticateService.ChangePassword(payload);

            return(Ok(result));
        }