@@ -26,14 +26,18 @@ public class CookieUtil {
2626
2727 // 쿠키 보안 설정 상수
2828 private static final boolean HTTP_ONLY = true ;
29- private static final boolean SECURE_IN_PRODUCTION = false ; // 개발환경에서는 false (HTTP), 운영환경에서는 true로 변경 (HTTPS)
3029 private static final String COOKIE_PATH = "/" ;
31- private static final String SAME_SITE = "Lax" ; // Lax: 같은 사이트 요청에서 쿠키 전송 허용
3230 private static final int COOKIE_EXPIRE_IMMEDIATELY = 0 ;
3331
3432 @ Value ("${custom.cookie.domain:}" )
3533 private String cookieDomain ;
3634
35+ @ Value ("${custom.cookie.secure:false}" )
36+ private boolean cookieSecure ;
37+
38+ @ Value ("${custom.cookie.same-site:Lax}" )
39+ private String cookieSameSite ;
40+
3741 public void setTokenCookies (HttpServletResponse response , String accessToken , String refreshToken ) {
3842 setAccessTokenCookie (response , accessToken );
3943 setRefreshTokenCookie (response , refreshToken );
@@ -58,26 +62,26 @@ public void clearTokenCookies(HttpServletResponse response) {
5862 * ResponseCookie를 생성합니다 (SameSite 지원).
5963 */
6064 private ResponseCookie createResponseCookie (String name , String value , int maxAge ) {
61- log .debug ("=== 쿠키 생성 중: name={}, cookieDomain ='{}', isEmpty ={}" ,
62- name , cookieDomain , cookieDomain == null || cookieDomain . isEmpty () );
65+ log .info ("=== 쿠키 생성 중: name={}, domain ='{}', secure={}, sameSite ={}" ,
66+ name , cookieDomain , cookieSecure , cookieSameSite );
6367
6468 ResponseCookie .ResponseCookieBuilder builder = ResponseCookie .from (name , value )
6569 .httpOnly (HTTP_ONLY )
66- .secure (SECURE_IN_PRODUCTION )
70+ .secure (cookieSecure )
6771 .path (COOKIE_PATH )
6872 .maxAge (Duration .ofSeconds (maxAge ))
69- .sameSite (SAME_SITE );
73+ .sameSite (cookieSameSite );
7074
7175 // 도메인이 설정되어 있으면 추가
7276 if (cookieDomain != null && !cookieDomain .isEmpty ()) {
73- log .debug ("쿠키 도메인 설정: {}" , cookieDomain );
77+ log .info ("쿠키 도메인 설정: {}" , cookieDomain );
7478 builder .domain (cookieDomain );
7579 } else {
76- log .debug ("쿠키 도메인 설정 안 함 (빈 값 또는 null)" );
80+ log .info ("쿠키 도메인 설정 안 함 (빈 값 또는 null)" );
7781 }
7882
7983 ResponseCookie cookie = builder .build ();
80- log .debug ("생성된 쿠키: {}" , cookie );
84+ log .info ("생성된 쿠키: {}" , cookie );
8185 return cookie ;
8286 }
8387
0 commit comments