Skip to content

Commit dcefaca

Browse files
authored
Merge pull request #241 from Umc8th-Snack/develop
Revert "feat: update social login user handling to remove password re…
2 parents 748563b + 3272415 commit dcefaca

3 files changed

Lines changed: 15 additions & 17 deletions

File tree

src/main/java/umc/snack/service/auth/GoogleOAuthService.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import umc.snack.common.exception.ErrorCode;
1717
import umc.snack.domain.auth.dto.SocialLoginResponseDto;
1818
import umc.snack.domain.auth.entity.RefreshToken;
19+
import umc.snack.domain.auth.entity.SocialLogin;
1920
import umc.snack.domain.user.entity.User;
2021
import umc.snack.repository.auth.RefreshTokenRepository;
2122
import umc.snack.repository.user.UserRepository;
@@ -164,7 +165,7 @@ private User findOrCreateUser(GoogleUserInfo userInfo) {
164165
// 신규 소셜 로그인 회원
165166
User newUser = User.builder()
166167
.email(userInfo.getEmail())
167-
.password(null) // 소셜 로그인 사용자는 비밀번호 없음
168+
.password("SOCIAL_LOGIN_USER") // 소셜 로그인 사용자 임시 패스워드
168169
.nickname(userInfo.getName())
169170
.role(User.Role.ROLE_USER)
170171
.status(User.Status.ACTIVE)

src/main/java/umc/snack/service/auth/KakaoOAuthService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ private User findOrCreateUser(KakaoUserInfo userInfo) {
219219

220220
User newUser = User.builder()
221221
.email(userInfo.getEmail())
222-
.password(null) // 소셜 로그인 사용자는 비밀번호 없음
222+
.password("SOCIAL_LOGIN_USER")
223223
.nickname(nickname)
224224
.profileImage(userInfo.getProfileImage())
225225
.status(User.Status.ACTIVE)

src/main/java/umc/snack/service/user/UserService.java

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -95,24 +95,21 @@ public void withdraw(User user, String password) {
9595
User managedUser = userRepository.findById(user.getUserId())
9696
.orElseThrow(() -> new CustomException(ErrorCode.USER_2622)); // 존재하지 않는 회원
9797

98-
if (managedUser.getStatus() == User.Status.DELETED) { // 이미 탈퇴 처리된 회원
99-
throw new CustomException(ErrorCode.USER_2621);
98+
if (managedUser.getPassword() == null || managedUser.getPassword().isBlank()) {
99+
throw new CustomException(ErrorCode.USER_2612); // 비번 없음(소셜) 상태에서 비번 확인 불가
100100
}
101101

102-
// 소셜 로그인 유저와 일반 로그인 유저 분기 처리
103-
if (managedUser.getLoginType() == User.LoginType.LOCAL) {
104-
// 일반 로그인: 비밀번호 검증 필요
105-
if (managedUser.getPassword() == null || managedUser.getPassword().isBlank()) {
106-
throw new CustomException(ErrorCode.USER_2612); // 비밀번호 없음
107-
}
108-
if (password == null || password.isBlank()) {
109-
throw new CustomException(ErrorCode.USER_2611); // 비밀번호 불일치
110-
}
111-
if (!passwordEncoder.matches(password, managedUser.getPassword())) {
112-
throw new CustomException(ErrorCode.USER_2611); // 비밀번호 불일치
113-
}
102+
// 비밀번호 검증 로직
103+
if (password == null || password.isBlank()) {
104+
throw new CustomException(ErrorCode.USER_2611);
105+
}
106+
if (!passwordEncoder.matches(password, managedUser.getPassword())) {
107+
throw new CustomException(ErrorCode.USER_2611);
108+
}
109+
110+
if (managedUser .getStatus() == User.Status.DELETED) { // 이미 탈퇴 처리된 회원
111+
throw new CustomException(ErrorCode.USER_2621);
114112
}
115-
// 소셜 로그인(GOOGLE, KAKAO): 비밀번호 검증 없이 탈퇴 가능 (JWT 인증으로 본인 확인됨)
116113

117114
managedUser.withdraw();
118115
// refresh 토큰, 탈퇴한 user관련 메모, 스크랩 DB에서 삭제

0 commit comments

Comments
 (0)