diff --git a/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.bin b/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.bin new file mode 100644 index 00000000..b838cd40 Binary files /dev/null and b/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.bin differ diff --git a/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.lock b/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.lock new file mode 100644 index 00000000..114d170b Binary files /dev/null and b/server/collusic-be/.gradle/6.8/executionHistory/executionHistory.lock differ diff --git a/server/collusic-be/.gradle/6.8/fileChanges/last-build.bin b/server/collusic-be/.gradle/6.8/fileChanges/last-build.bin new file mode 100644 index 00000000..f76dd238 Binary files /dev/null and b/server/collusic-be/.gradle/6.8/fileChanges/last-build.bin differ diff --git a/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.bin b/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.bin new file mode 100644 index 00000000..f553a81c Binary files /dev/null and b/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.bin differ diff --git a/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.lock b/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.lock new file mode 100644 index 00000000..13b892f0 Binary files /dev/null and b/server/collusic-be/.gradle/6.8/fileHashes/fileHashes.lock differ diff --git a/server/collusic-be/.gradle/6.8/gc.properties b/server/collusic-be/.gradle/6.8/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/server/collusic-be/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/server/collusic-be/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 00000000..3ed487e4 Binary files /dev/null and b/server/collusic-be/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/server/collusic-be/.gradle/buildOutputCleanup/cache.properties b/server/collusic-be/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 00000000..ad4fe4fa --- /dev/null +++ b/server/collusic-be/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Tue Jan 09 20:51:54 KST 2024 +gradle.version=7.3.1 diff --git a/server/collusic-be/.gradle/checksums/checksums.lock b/server/collusic-be/.gradle/checksums/checksums.lock new file mode 100644 index 00000000..95c07611 Binary files /dev/null and b/server/collusic-be/.gradle/checksums/checksums.lock differ diff --git a/server/collusic-be/.gradle/configuration-cache/gc.properties b/server/collusic-be/.gradle/configuration-cache/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/server/collusic-be/.gradle/vcs-1/gc.properties b/server/collusic-be/.gradle/vcs-1/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/server/collusic-be/src/main/java/com/collusic/collusicbe/global/auth/JWTAuthenticationFilter.java b/server/collusic-be/src/main/java/com/collusic/collusicbe/global/auth/JWTAuthenticationFilter.java index 2243e0c6..333445b3 100644 --- a/server/collusic-be/src/main/java/com/collusic/collusicbe/global/auth/JWTAuthenticationFilter.java +++ b/server/collusic-be/src/main/java/com/collusic/collusicbe/global/auth/JWTAuthenticationFilter.java @@ -7,6 +7,7 @@ import com.collusic.collusicbe.global.util.JWTUtil; import com.collusic.collusicbe.global.util.ParsingUtil; import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.core.Authentication; import org.springframework.security.core.authority.SimpleGrantedAuthority; @@ -38,6 +39,14 @@ public JWTAuthenticationFilter(AuthenticationManager authenticationManager, Toke @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException, ExpiredTokenException { + String requestURI = request.getRequestURI(); + String method = request.getMethod(); + + if (HttpMethod.GET.matches(method) && requestURI.startsWith("/projects")) { + chain.doFilter(request, response); + return; + } + String bearer = request.getHeader(HttpHeaders.AUTHORIZATION); String refreshToken = CookieUtils.extractRefreshToken(request); diff --git a/server/collusic-be/src/main/java/com/collusic/collusicbe/global/util/CookieUtils.java b/server/collusic-be/src/main/java/com/collusic/collusicbe/global/util/CookieUtils.java index 00fedd8a..3ad12034 100644 --- a/server/collusic-be/src/main/java/com/collusic/collusicbe/global/util/CookieUtils.java +++ b/server/collusic-be/src/main/java/com/collusic/collusicbe/global/util/CookieUtils.java @@ -31,8 +31,9 @@ public static String extractRefreshToken(HttpServletRequest request) { public static Cookie setCookieWith(String refreshToken) { Cookie cookie = new Cookie("refreshToken", refreshToken); cookie.setMaxAge(REFRESH_TIME); - cookie.setSecure(false); // TODO : HTTPS 적용 시 true로 옵션 변경하기 + cookie.setSecure(false); cookie.setHttpOnly(true); + cookie.setPath("/auth"); return cookie; } } \ No newline at end of file diff --git a/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/MemberController.java b/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/MemberController.java index 01b7d758..b00376d7 100644 --- a/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/MemberController.java +++ b/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/MemberController.java @@ -87,7 +87,7 @@ public ResponseEntity getProfileUrl(@PathVariable String } @Operation(summary = "로그아웃", description = "로그인된 회원을 로그아웃 시킨다.") - @GetMapping("/logout") + @GetMapping("/auth/logout") public ResponseEntity logout(HttpServletRequest request, HttpServletResponse response) { tokenService.deleteRefreshToken(CookieUtils.extractRefreshToken(request)); CookieUtils.expireCookie(response, "refreshToken"); diff --git a/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/TokenController.java b/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/TokenController.java index c94a7525..20b71848 100644 --- a/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/TokenController.java +++ b/server/collusic-be/src/main/java/com/collusic/collusicbe/web/controller/TokenController.java @@ -17,7 +17,7 @@ public class TokenController { private final static String BEARER_PREFIX = "Bearer "; @Operation(summary = "토큰 재발급", description = "refresh token을 통한 access token 재발급") - @PostMapping("/reissue") + @PostMapping("/auth/reissue") public ResponseEntity reissue(HttpServletResponse response) { String bearer = response.getHeader("Authorization"); String accessToken = bearer.substring(BEARER_PREFIX.length());