From 3a6201c18389eb1b24851512a4f00a64a0ace2e6 Mon Sep 17 00:00:00 2001 From: Chaerin Hwang Date: Mon, 29 Jul 2024 21:13:24 +0900 Subject: [PATCH 1/4] =?UTF-8?q?feat:=20=EB=82=B4=20=ED=94=84=EB=A1=9C?= =?UTF-8?q?=ED=95=84=20=EC=A1=B0=ED=9A=8C=20API=20=EC=9D=91=EB=8B=B5=20DTO?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/member/dto/response/MyProfileResponseDto.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/sws/songpin/domain/member/dto/response/MyProfileResponseDto.java b/src/main/java/sws/songpin/domain/member/dto/response/MyProfileResponseDto.java index a9f6778a..b5a3e991 100644 --- a/src/main/java/sws/songpin/domain/member/dto/response/MyProfileResponseDto.java +++ b/src/main/java/sws/songpin/domain/member/dto/response/MyProfileResponseDto.java @@ -7,10 +7,11 @@ public record MyProfileResponseDto( ProfileImg profileImg, String nickname, String handle, + String email, long followerCount, long followingCount ) { public static MyProfileResponseDto from(Member member, long followerCount, long followingCount){ - return new MyProfileResponseDto(member.getProfileImg(), member.getNickname(), member.getHandle(), followerCount, followingCount); + return new MyProfileResponseDto(member.getProfileImg(), member.getNickname(), member.getHandle(), member.getEmail(), followerCount, followingCount); } } From 13e24cce7c38f0e0888b4043bd8e3fa38ec9d5cf Mon Sep 17 00:00:00 2001 From: Chaerin Hwang Date: Mon, 29 Jul 2024 21:27:56 +0900 Subject: [PATCH 2/4] =?UTF-8?q?chore:=20=EC=95=A1=EC=84=B8=EC=8A=A4=20?= =?UTF-8?q?=ED=86=A0=ED=81=B0=20=EC=9C=A0=ED=9A=A8=20=EA=B8=B0=EA=B0=84=20?= =?UTF-8?q?=EC=9E=84=EC=8B=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/sws/songpin/global/auth/JwtUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/sws/songpin/global/auth/JwtUtil.java b/src/main/java/sws/songpin/global/auth/JwtUtil.java index 5846b5f3..1c0660ea 100644 --- a/src/main/java/sws/songpin/global/auth/JwtUtil.java +++ b/src/main/java/sws/songpin/global/auth/JwtUtil.java @@ -21,7 +21,7 @@ public class JwtUtil { private final Key refreshKey; private final RedisService redisService; private final CustomUserDetailsService userDetailsService; - private static final Duration ACCESS_TOKEN_EXPIRE_TIME = Duration.ofMinutes(30); //30분 + private static final Duration ACCESS_TOKEN_EXPIRE_TIME = Duration.ofDays(30); //30분 private static final Duration REFRESH_TOKEN_EXPIRE_TIME = Duration.ofDays(7); //7일 public JwtUtil(@Value("${jwt.secret.access}") String accessSecret, @Value("${jwt.secret.refresh}") String refreshSecret, CustomUserDetailsService userDetailsService, RedisService redisService){ From fcc9de87b9309922a81b199d4edabb5da45b277d Mon Sep 17 00:00:00 2001 From: Chaerin Hwang Date: Mon, 29 Jul 2024 21:29:57 +0900 Subject: [PATCH 3/4] =?UTF-8?q?chore:=20=EC=95=A1=EC=84=B8=EC=8A=A4=20?= =?UTF-8?q?=ED=86=A0=ED=81=B0=20=EC=9C=A0=ED=9A=A8=20=EA=B8=B0=EA=B0=84=20?= =?UTF-8?q?=EC=9E=84=EC=8B=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/sws/songpin/global/auth/JwtUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/sws/songpin/global/auth/JwtUtil.java b/src/main/java/sws/songpin/global/auth/JwtUtil.java index 1c0660ea..b6f3f0e7 100644 --- a/src/main/java/sws/songpin/global/auth/JwtUtil.java +++ b/src/main/java/sws/songpin/global/auth/JwtUtil.java @@ -21,7 +21,7 @@ public class JwtUtil { private final Key refreshKey; private final RedisService redisService; private final CustomUserDetailsService userDetailsService; - private static final Duration ACCESS_TOKEN_EXPIRE_TIME = Duration.ofDays(30); //30분 + private static final Duration ACCESS_TOKEN_EXPIRE_TIME = Duration.ofDays(1); //30분 private static final Duration REFRESH_TOKEN_EXPIRE_TIME = Duration.ofDays(7); //7일 public JwtUtil(@Value("${jwt.secret.access}") String accessSecret, @Value("${jwt.secret.refresh}") String refreshSecret, CustomUserDetailsService userDetailsService, RedisService redisService){ From 390eb7cadf65add90b31bd35d8849e2dff370a4d Mon Sep 17 00:00:00 2001 From: Chaerin Hwang Date: Mon, 29 Jul 2024 22:06:26 +0900 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20=EC=BF=A0=ED=82=A4=20=EA=B4=80?= =?UTF-8?q?=EB=A0=A8=20SameSite=20=EC=86=8D=EC=84=B1=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sws/songpin/global/auth/CookieUtil.java | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/src/main/java/sws/songpin/global/auth/CookieUtil.java b/src/main/java/sws/songpin/global/auth/CookieUtil.java index 5edb1e46..85ef28a0 100644 --- a/src/main/java/sws/songpin/global/auth/CookieUtil.java +++ b/src/main/java/sws/songpin/global/auth/CookieUtil.java @@ -24,21 +24,25 @@ public String getCookieValue(HttpServletRequest request, String name){ } public void addCookie(HttpServletResponse response, String name, String value, int maxAge){ - Cookie refreshTokenCookie = new Cookie(name, value); - refreshTokenCookie.setHttpOnly(true); - refreshTokenCookie.setSecure(true); - refreshTokenCookie.setPath("/"); - refreshTokenCookie.setMaxAge(maxAge); - response.addCookie(refreshTokenCookie); + StringBuilder cookieHeader = new StringBuilder(); + cookieHeader.append(name).append("=").append(value).append(";"); + cookieHeader.append("Max-Age=").append(maxAge).append(";"); + cookieHeader.append("Expires=").append(new java.util.Date(System.currentTimeMillis() + maxAge * 1000L)).append(";"); + cookieHeader.append("Path=/;"); + cookieHeader.append("HttpOnly;"); + cookieHeader.append("Secure;"); + cookieHeader.append("SameSite=None;"); + + response.addHeader("Set-Cookie", cookieHeader.toString()); + } public void deleteCookie(HttpServletResponse response, String name){ - Cookie refreshTokenCookie = new Cookie(name,null); - refreshTokenCookie.setHttpOnly(true); - refreshTokenCookie.setPath("/"); - refreshTokenCookie.setMaxAge(0); + Cookie cookie = new Cookie(name,null); + cookie.setHttpOnly(true); + cookie.setPath("/"); + cookie.setMaxAge(0); - response.addCookie(refreshTokenCookie); - } + response.addCookie(cookie);} }