[FIX] ログインしてるユーザーはパスワード再設定後プロフィール画面に戻るように修正・パスワード再設定の際ハッシュ化処理

This commit is contained in:
s-choi
2026-09-25 16:09:36 +09:00
parent cd4321ef8c
commit 2c445c1904
2 changed files with 22 additions and 20 deletions

View File

@@ -1,5 +1,6 @@
package com.example.demo.app.domain.service.impl; package com.example.demo.app.domain.service.impl;
import org.mindrot.jbcrypt.BCrypt;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.example.demo.app.domain.service.PasswordResetService; import com.example.demo.app.domain.service.PasswordResetService;
@@ -13,30 +14,31 @@ import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor @RequiredArgsConstructor
public class PasswordResetServiceImpl implements PasswordResetService { public class PasswordResetServiceImpl implements PasswordResetService {
private final UserRepository userRepository; private final UserRepository userRepository;
@Override @Override
public boolean resetPassword( public boolean resetPassword(
Long userId, Long userId,
PasswordResetForm passwordResetForm) { PasswordResetForm passwordResetForm) {
if (!passwordResetForm.getPassword() if (!passwordResetForm.getPassword()
.equals(passwordResetForm.getPasswordConfirm())) { .equals(passwordResetForm.getPasswordConfirm())) {
return false; return false;
} }
UserEntity userEntity = UserEntity userEntity = userRepository.findById(userId).orElse(null);
userRepository.findById(userId).orElse(null);
if (userEntity == null) { if (userEntity == null) {
return false; return false;
} }
userEntity.setPassword( String passwordHashed = BCrypt.hashpw(passwordResetForm.getPassword(), BCrypt.gensalt());
passwordResetForm.getPassword());
userRepository.save(userEntity); userEntity.setPassword(
passwordHashed);
return true; userRepository.save(userEntity);
}
return true;
}
} }

View File

@@ -62,7 +62,7 @@ public class PasswordResetController {
(LoginModel) session.getAttribute("loginUser"); (LoginModel) session.getAttribute("loginUser");
if (loginUser != null) { if (loginUser != null) {
return "redirect:/menu"; return "redirect:/profile";
} }
return "redirect:/login"; return "redirect:/login";