From 64e5e0ada89bbce866298eca228b7a083529e4f9 Mon Sep 17 00:00:00 2001 From: yeoEun Date: Fri, 14 Feb 2025 16:55:53 +0900 Subject: [PATCH] =?UTF-8?q?feat=20#32=20:=20=ED=97=88=EC=9A=A9=20=EC=B6=9C?= =?UTF-8?q?=EC=B2=98=20=EC=84=A4=EC=A0=95=20=EB=B0=8F=20CORS=20Preflight?= =?UTF-8?q?=20=EB=AC=B8=EC=A0=9C=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .gradle/buildOutputCleanup/outputFiles.bin | Bin 19415 -> 19505 bytes .gradle/file-system.probe | Bin 8 -> 8 bytes .../configuration/SecurityConfig.java | 10 ++++++---- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index ee6cb6e8c7a169b2f467c9eda9bfdcf35e0c265a..f5eabb055db072a12d4d7fb5a43d634dec241921 100644 GIT binary patch literal 17 VcmZRc_VA=6%hWql8NfhP82~rW1fKu^ literal 17 VcmZRc_VA=6%hWql8NfhP8~``N1d{*& diff --git a/.gradle/buildOutputCleanup/outputFiles.bin b/.gradle/buildOutputCleanup/outputFiles.bin index 8801f00868ba200ddf03747865a6a0f497e96359..1f7b7a32928e640828c392024bb279892e9365cf 100644 GIT binary patch delta 156 zcmcaUopIv~#tkMCk{0c1Yfon_c_73920rrtpx&W(ElmE@hgS3;4$ zBfM$iNrw3lG4J1#uSzrsoQ`aL^1RdiAXM=BW?#t#i~^E8Gv?m@)UpC9`f~GADJ3Q* f*1(O5Kg2g0oDkaV=rN6X@_rBb$p^fJpjaFLh>AMw delta 49 zcmV-10M7rhm;u+90kAX}0W*_L7?6|o7#Wi$8F#a_8JGdHWg8j-0tDHyA@~=uFhCQt HK}ePZ$vqLK diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index 7c1226e342cb08acba49acb7e4912b5e78948e77..7ce3fcf7d702c2334ad8d5bc4b2fbd4f94fde06e 100644 GIT binary patch literal 8 PcmZQzV4TWabU7UW24(_A literal 8 PcmZQzV4TYIYJUy@2d4tA diff --git a/src/main/java/com/team4/giftidea/configuration/SecurityConfig.java b/src/main/java/com/team4/giftidea/configuration/SecurityConfig.java index 74bfcbc..90b557e 100644 --- a/src/main/java/com/team4/giftidea/configuration/SecurityConfig.java +++ b/src/main/java/com/team4/giftidea/configuration/SecurityConfig.java @@ -2,6 +2,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.web.SecurityFilterChain; @@ -32,6 +33,7 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti .csrf(csrf -> csrf.disable()) // CSRF 비활성화 .authorizeHttpRequests(auth -> auth .requestMatchers("/admin/**").authenticated() // "/admin/**" 경로는 인증 필요 + .requestMatchers(HttpMethod.OPTIONS, "/**").permitAll() // Preflight 요청 허용 .anyRequest().permitAll() // 나머지 요청은 인증 없이 허용 ); @@ -47,11 +49,8 @@ public CorsConfigurationSource corsConfigurationSource() { // 허용할 출처 설정 configuration.setAllowedOrigins(List.of( - "http://localhost:5173", - "http://localhost:3000", "https://presentalk.store", - "https://app.presentalk.store", - "http://presentalk.s3-website.ap-northeast-2.amazonaws.com" + "https://app.presentalk.store" )); // 허용할 HTTP 메서드 설정 @@ -63,6 +62,9 @@ public CorsConfigurationSource corsConfigurationSource() { // 쿠키 포함 요청 허용 configuration.setAllowCredentials(true); + // Preflight 요청 캐싱 (성능 향상) + configuration.setMaxAge(3600L); // 1시간 동안 Preflight 요청 결과 캐싱 + // CORS 설정을 특정 경로에 적용 UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", configuration);