Skip to content

Commit 7a1c057

Browse files
authored
Merge pull request #92 from MT-TEAM-Org/PH-111-Member-PK-변경
fix : 소셜 로그인 리다이렉트 시 정상 로그인 되었음에도 토큰 발급되지 않는 이슈 수정
2 parents fa52a77 + 99b6b15 commit 7a1c057

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

src/main/java/org/myteam/server/oauth2/handler/CustomOauth2SuccessHandler.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@
2323

2424
import static org.myteam.server.auth.controller.ReIssueController.LOGOUT_PATH;
2525
import static org.myteam.server.auth.controller.ReIssueController.TOKEN_REISSUE_PATH;
26-
import static org.myteam.server.global.security.jwt.JwtProvider.*;
26+
import static org.myteam.server.global.security.jwt.JwtProvider.REFRESH_TOKEN_KEY;
27+
import static org.myteam.server.global.security.jwt.JwtProvider.TOKEN_CATEGORY_REFRESH;
2728
import static org.myteam.server.global.util.cookie.CookieUtil.createCookie;
2829
import static org.myteam.server.global.util.domain.DomainUtil.extractDomain;
2930
import static org.myteam.server.member.domain.MemberStatus.*;
@@ -67,19 +68,18 @@ public void onAuthenticationSuccess(HttpServletRequest request, HttpServletRespo
6768
log.warn("PENDING 상태인 경우 로그인이 불가능합니다");
6869

6970
// X-Refresh-Token
70-
String refreshToken = jwtProvider.generateToken(TOKEN_CATEGORY_REFRESH, Duration.ofMinutes(5), member.getPublicId(), member.getRole().name(), member.getStatus().name());
71+
String refreshToken = jwtProvider.generateToken(TOKEN_CATEGORY_REFRESH, Duration.ofDays(1), member.getPublicId(), member.getRole().name(), member.getStatus().name());
7172

7273
reIssueService.deleteByPublicId(member.getPublicId());
73-
reIssueService.addRefreshEntity(member.getPublicId(), refreshToken, Duration.ofMinutes(5));
74+
reIssueService.addRefreshEntity(member.getPublicId(), refreshToken, Duration.ofDays(1));
7475

7576
log.warn("cookieValue refreshToken 확인용: {}", refreshToken);
7677
log.warn("cookieValue PublicId 확인용: {}", member.getPublicId());
7778

7879
// 24 시간 유효한 리프레시 토큰을 생성
7980
response.addCookie(createCookie(REFRESH_TOKEN_KEY, refreshToken, TOKEN_REISSUE_PATH, 24 * 60 * 60, true, extractDomain(request.getServerName())));
8081
response.addCookie(createCookie(REFRESH_TOKEN_KEY, refreshToken, LOGOUT_PATH, 24 * 60 * 60, true, extractDomain(request.getServerName())));
81-
String redirectUrl = String.format("%s%s?status=%s&email=%s",
82-
frontUrl, frontSignUpPath, PENDING.name(), email);
82+
String redirectUrl = String.format("%s%s?status=%s&email=%s", frontUrl, frontSignUpPath, PENDING.name(), email);
8383
log.info("redirectUrl: {}", redirectUrl);
8484
response.sendRedirect(redirectUrl);
8585
return;
@@ -99,10 +99,12 @@ public void onAuthenticationSuccess(HttpServletRequest request, HttpServletRespo
9999
log.info("onAuthenticationSuccess role: {}", member.getRole());
100100

101101
// Authorization
102-
String accessToken = jwtProvider.generateToken(TOKEN_CATEGORY_ACCESS, Duration.ofDays(1), member.getPublicId(), member.getRole().name(), member.getStatus().name());
102+
String refreshToken = jwtProvider.generateToken(TOKEN_CATEGORY_REFRESH, Duration.ofDays(1), member.getPublicId(), member.getRole().name(), member.getStatus().name());
103103

104-
log.debug("print accessToken: {}", accessToken);
105-
// log.debug("print refreshToken: {}", refreshToken);
104+
response.addCookie(createCookie(REFRESH_TOKEN_KEY, refreshToken, TOKEN_REISSUE_PATH, 24 * 60 * 60, true, extractDomain(request.getServerName())));
105+
response.addCookie(createCookie(REFRESH_TOKEN_KEY, refreshToken, LOGOUT_PATH, 24 * 60 * 60, true, extractDomain(request.getServerName())));
106+
107+
log.debug("print refreshToken: {}", refreshToken);
106108
log.debug("print frontUrl: {}", frontUrl);
107109
response.sendRedirect(frontUrl);
108110
log.debug("Oauth 로그인에 성공하였습니다.");

0 commit comments

Comments
 (0)