Skip to content

Commit 0cfd73d

Browse files
authored
#63 [CI/CD] Nginx Reverse Proxy 및 Certbot 기반의 SSL 인증 (#71)
1 parent 0fc3f54 commit 0cfd73d

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

src/main/java/com/swyp/app/global/config/SwaggerConfig.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,13 @@
55
import io.swagger.v3.oas.models.info.Info;
66
import io.swagger.v3.oas.models.security.SecurityRequirement;
77
import io.swagger.v3.oas.models.security.SecurityScheme;
8+
import java.util.Arrays;
9+
import java.util.List;
810
import org.springframework.context.annotation.Bean;
911
import org.springframework.context.annotation.Configuration;
12+
import org.springframework.web.cors.CorsConfiguration;
13+
import org.springframework.web.cors.CorsConfigurationSource;
14+
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
1015

1116
@Configuration
1217
public class SwaggerConfig {
@@ -32,4 +37,30 @@ public OpenAPI openAPI() {
3237
.addSecuritySchemes("bearerAuth", securityScheme))
3338
.addSecurityItem(securityRequirement);
3439
}
40+
41+
@Bean
42+
public CorsConfigurationSource corsConfigurationSource() {
43+
CorsConfiguration configuration = new CorsConfiguration();
44+
45+
// 허용할 오리진(도메인) 설정
46+
configuration.setAllowedOrigins(List.of(
47+
"http://localhost:3000",
48+
"https://picke.store",
49+
"https://www.picke.store"
50+
));
51+
52+
// 허용할 HTTP 메서드
53+
configuration.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"));
54+
55+
// 허용할 헤더
56+
configuration.setAllowedHeaders(List.of("*"));
57+
58+
// 자격 증명(쿠키, Authorization 헤더 등) 허용
59+
configuration.setAllowCredentials(true);
60+
61+
// 모든 경로(/**)에 대해 위 설정 적용
62+
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
63+
source.registerCorsConfiguration("/**", configuration);
64+
return source;
65+
}
3566
}

0 commit comments

Comments
 (0)