Skip to content

Commit

Permalink
[feat #203] @Profile을 이용한 쿠키 생성 반자동 변경
Browse files Browse the repository at this point in the history
  • Loading branch information
dudxo committed Feb 10, 2025
1 parent 427ec18 commit f47bf2b
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 8 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.dnd.gongmuin.security.jwt.util;

import jakarta.servlet.http.Cookie;

public interface CookieConfig {

public Cookie createCookie(String token);
}
11 changes: 3 additions & 8 deletions src/main/java/com/dnd/gongmuin/security/jwt/util/CookieUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,10 @@
@RequiredArgsConstructor
public class CookieUtil {

private final CookieConfig cookieConfig;

public Cookie createCookie(String token) {
Cookie cookie = new Cookie("Authorization", token);
cookie.setPath("/");
cookie.setDomain("gongmuin.site");
cookie.setMaxAge(60 * 60);
cookie.setHttpOnly(true);
cookie.setSecure(true);
cookie.setAttribute("SameSite", "Strict");
return cookie;
return cookieConfig.createCookie(token);
}

public String getCookieValue(HttpServletRequest request) {
Expand Down
20 changes: 20 additions & 0 deletions src/main/java/com/dnd/gongmuin/security/jwt/util/DevCookie.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.dnd.gongmuin.security.jwt.util;

import org.springframework.context.annotation.Profile;

import jakarta.servlet.http.Cookie;

@Profile("dev")
public class DevCookie implements CookieConfig {
@Override
public Cookie createCookie(String token) {
Cookie cookie = new Cookie("Authorization", token);
cookie.setPath("/");
cookie.setDomain("gongmuin.site");
cookie.setMaxAge(60 * 60);
cookie.setHttpOnly(true);
cookie.setSecure(true);
cookie.setAttribute("SameSite", "Strict");
return cookie;
}
}
20 changes: 20 additions & 0 deletions src/main/java/com/dnd/gongmuin/security/jwt/util/LocalCookie.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.dnd.gongmuin.security.jwt.util;

import org.springframework.context.annotation.Profile;

import jakarta.servlet.http.Cookie;

@Profile("local")
public class LocalCookie implements CookieConfig {

@Override
public Cookie createCookie(String token) {
Cookie cookie = new Cookie("Authorization", token);
cookie.setPath("/");
cookie.setMaxAge(60 * 60);
cookie.setHttpOnly(false);
cookie.setSecure(false);
cookie.setAttribute("SameSite", "None");
return cookie;
}
}
22 changes: 22 additions & 0 deletions src/main/java/com/dnd/gongmuin/security/jwt/util/ProdCookie.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package com.dnd.gongmuin.security.jwt.util;

import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Component;

import jakarta.servlet.http.Cookie;

@Component
@Profile("prod")
public class ProdCookie implements CookieConfig {
@Override
public Cookie createCookie(String token) {
Cookie cookie = new Cookie("Authorization", token);
cookie.setPath("/");
cookie.setDomain("gongmuin.site");
cookie.setMaxAge(60 * 60);
cookie.setHttpOnly(true);
cookie.setSecure(true);
cookie.setAttribute("SameSite", "Strict");
return cookie;
}
}

0 comments on commit f47bf2b

Please sign in to comment.