From 15325890e856f561d02a1f0241ca613ef275b00d Mon Sep 17 00:00:00 2001 From: tolag3 Date: Mon, 2 Sep 2024 11:59:27 +0900 Subject: [PATCH] =?UTF-8?q?=ED=95=84=ED=84=B0=20=EC=A0=81=EC=9A=A9=20?= =?UTF-8?q?=EB=B0=8F=20pom.xml=20=EB=9D=BC=EC=9D=B4=EB=B8=8C=EB=9F=AC?= =?UTF-8?q?=EB=A6=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 13 +++++ .../java/kcc/let/uat/uia/web/SSOValid.java | 36 ------------ .../uat/uia/web/SessionCheckCustomFilter.java | 58 +++++++++++++++++++ src/main/webapp/WEB-INF/web.xml | 15 +++-- 4 files changed, 78 insertions(+), 44 deletions(-) delete mode 100644 src/main/java/kcc/let/uat/uia/web/SSOValid.java create mode 100644 src/main/java/kcc/let/uat/uia/web/SessionCheckCustomFilter.java diff --git a/pom.xml b/pom.xml index 94fc2448..57813e94 100644 --- a/pom.xml +++ b/pom.xml @@ -427,6 +427,19 @@ provided + + + com.oroinc + NetComponents + 1.3.8 + + + + com.tmax.tibero + tibero-jdbc + 5.0 + + diff --git a/src/main/java/kcc/let/uat/uia/web/SSOValid.java b/src/main/java/kcc/let/uat/uia/web/SSOValid.java deleted file mode 100644 index 54de23d3..00000000 --- a/src/main/java/kcc/let/uat/uia/web/SSOValid.java +++ /dev/null @@ -1,36 +0,0 @@ -package kcc.let.uat.uia.web; - -import java.io.IOException; - -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.stereotype.Component; - -@Component -public class SSOValid implements Filter { - // 초기화 함수 - @Override - public void init(FilterConfig filterConfig) throws ServletException { - } - - // 필터 함수, 브라우저에서 요청이 오면 필터 매핑에 의해 호출된다. - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - - chain.doFilter(request, response); - } - - @Override - public void destroy() { - - } -} - - diff --git a/src/main/java/kcc/let/uat/uia/web/SessionCheckCustomFilter.java b/src/main/java/kcc/let/uat/uia/web/SessionCheckCustomFilter.java new file mode 100644 index 00000000..d26ee579 --- /dev/null +++ b/src/main/java/kcc/let/uat/uia/web/SessionCheckCustomFilter.java @@ -0,0 +1,58 @@ +package kcc.let.uat.uia.web; + +import java.io.IOException; + +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler; +import org.springframework.stereotype.Component; +import org.springframework.web.filter.OncePerRequestFilter; + +import kcc.com.cmm.LoginVO; + +@Component +public class SessionCheckCustomFilter extends OncePerRequestFilter{ + + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) + throws ServletException, IOException { + + + + +/*================================================================================================================================================== +*================================================================== 구현부 prehandle ================================================================= +*/ + HttpServletResponse resp = (HttpServletResponse) response; + HttpServletRequest req = (HttpServletRequest) request; + + HttpSession session = req.getSession(); + + LoginVO loginVO = (LoginVO) session.getAttribute("LoginVO"); +// session.setAttribute(null, session); + + if(loginVO == null) { + /*Spring Security 로그아웃*/ + Authentication auth = SecurityContextHolder.getContext().getAuthentication(); + if (auth != null) { + new SecurityContextLogoutHandler().logout(req, resp, auth); + } + } + +/*================================================================================================================================================== +*================================================================== 구현부 prehandle 끝 =============================================================== +*/ + + + //주의 !! 다음 필터 체인 실행 코드로 꼭 포함되어야함 + filterChain.doFilter(request, response); + } +} + + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 857660b7..2cd4bd2c 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -44,17 +44,16 @@ /* - + - - + SessionCheckCustomFilter + *.do +