From fb16729e006ffc2927925db96fa9449b6ae3e92c Mon Sep 17 00:00:00 2001 From: silverprize Date: Mon, 1 Aug 2016 20:46:52 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B6=88=EB=9F=89jwt=EB=A1=9C=20api=ED=98=B8?= =?UTF-8?q?=EC=B6=9C=ED=95=A0=20=EB=95=8C=20jwt=ED=95=84=EC=9A=94=EC=97=86?= =?UTF-8?q?=EB=8A=94=20api=EA=B9=8C=EC=A7=80=20=EB=8B=A4=20=EC=B0=A8?= =?UTF-8?q?=EB=8B=A8=EB=90=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AuthenticationTokenFilter.java | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/jakduk-web/src/main/java/com/jakduk/configuration/authentication/AuthenticationTokenFilter.java b/jakduk-web/src/main/java/com/jakduk/configuration/authentication/AuthenticationTokenFilter.java index 4ac78f5c..1480efbc 100644 --- a/jakduk-web/src/main/java/com/jakduk/configuration/authentication/AuthenticationTokenFilter.java +++ b/jakduk-web/src/main/java/com/jakduk/configuration/authentication/AuthenticationTokenFilter.java @@ -7,6 +7,7 @@ import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; @@ -18,7 +19,9 @@ import com.jakduk.common.CommonConst; import com.jakduk.common.util.JwtTokenUtil; +import com.jakduk.exception.NotFoundJakdukAccountException; +@Slf4j public class AuthenticationTokenFilter extends GenericFilterBean { @Value("${jwt.token.header}") @@ -42,20 +45,24 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha String providerId = jwtTokenUtil.getProviderIdFromToken(authToken); if (! ObjectUtils.isEmpty(username) && SecurityContextHolder.getContext().getAuthentication() == null) { - UserDetails userDetails; - if (CommonConst.ACCOUNT_TYPE.JAKDUK.toString().equals(providerId)) { - userDetails = jakdukDetailsService.loadUserByUsername(username); - } else { - userDetails = socialDetailService.loadUserByUsername(username); - } + try { + UserDetails userDetails; + if (CommonConst.ACCOUNT_TYPE.JAKDUK.toString().equals(providerId)) { + userDetails = jakdukDetailsService.loadUserByUsername(username); + } else { + userDetails = socialDetailService.loadUserByUsername(username); + } - if (jwtTokenUtil.isValidateToken(authToken, userDetails)) { - UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken( - userDetails, userDetails.getPassword(), userDetails.getAuthorities()); + if (jwtTokenUtil.isValidateToken(authToken, userDetails)) { + UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken( + userDetails, userDetails.getPassword(), userDetails.getAuthorities()); - authentication.setDetails(new WebAuthenticationDetailsSource().buildDetails(httpRequest)); - SecurityContextHolder.getContext().setAuthentication(authentication); - } + authentication.setDetails(new WebAuthenticationDetailsSource().buildDetails(httpRequest)); + SecurityContextHolder.getContext().setAuthentication(authentication); + } + } catch (NotFoundJakdukAccountException e) { + log.info(e.getMessage(), e); + } } chain.doFilter(request, response);