로그인, 로그아웃 로그 생성.
parent
3963007183
commit
42196383be
|
|
@ -86,7 +86,7 @@ public class AdminLogsService extends EgovAbstractServiceImpl {
|
|||
now = now.minusMinutes(now.getMinute());
|
||||
now = now.minusSeconds(now.getSecond());
|
||||
List<ThLoginLog> todayLoginLog = loginLogRepository.findByUserIdAndAccessDtAfter(userId, now);
|
||||
if(todayLoginLog.size()==0){
|
||||
if(todayLoginLog.size()==1){
|
||||
userConnLog.setLogCnt(userConnLog.getLogCnt()+1);
|
||||
}
|
||||
userLogsRepository.save(userConnLog);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
package com.dbnt.kcscbackend.config.security;
|
||||
|
||||
|
||||
import com.dbnt.kcscbackend.admin.logs.service.AdminLogsService;
|
||||
import com.dbnt.kcscbackend.auth.entity.UserInfo;
|
||||
import com.dbnt.kcscbackend.config.jwt.EgovJwtTokenUtil;
|
||||
import com.dbnt.kcscbackend.config.util.ClientUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
|
||||
|
|
@ -9,11 +13,7 @@ import org.springframework.http.server.ServletServerHttpResponse;
|
|||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler;
|
||||
import org.springframework.security.web.authentication.logout.LogoutSuccessHandler;
|
||||
import org.springframework.security.web.savedrequest.HttpSessionRequestCache;
|
||||
import org.springframework.security.web.savedrequest.RequestCache;
|
||||
import org.springframework.security.web.savedrequest.SavedRequest;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.http.Cookie;
|
||||
|
|
@ -23,7 +23,10 @@ import java.io.IOException;
|
|||
import java.util.HashMap;
|
||||
|
||||
@Configuration
|
||||
@RequiredArgsConstructor
|
||||
public class CustomLogoutSuccessHandler implements LogoutSuccessHandler {
|
||||
private final EgovJwtTokenUtil jwtTokenUtil;
|
||||
private final AdminLogsService adminLogsService;
|
||||
|
||||
@Override
|
||||
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
|
||||
|
|
@ -37,6 +40,11 @@ public class CustomLogoutSuccessHandler implements LogoutSuccessHandler {
|
|||
|
||||
HashMap<String, Object> resultMap = new HashMap<String, Object>();
|
||||
resultMap.put("resultCode", "200");
|
||||
|
||||
//로그아웃 이력 생성
|
||||
String accessToken = request.getHeader("Authorization");
|
||||
adminLogsService.insertLoginLog(jwtTokenUtil.getUserIdFromToken(accessToken), ClientUtils.getRemoteIP(request), accessToken, "N", ClientUtils.getWebType(request));
|
||||
|
||||
if (jsonConverter.canWrite(resultMap.getClass(), jsonMimeType)) {
|
||||
jsonConverter.write(resultMap, jsonMimeType, new ServletServerHttpResponse(response));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,8 +27,9 @@ import java.util.Arrays;
|
|||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
|
||||
@Configuration
|
||||
@RequiredArgsConstructor
|
||||
public class CustomUrlAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
|
||||
|
||||
private final EgovJwtTokenUtil jwtTokenUtil;
|
||||
|
|
|
|||
|
|
@ -133,7 +133,7 @@ public class SecurityConfig {
|
|||
|
||||
http.addFilterBefore(jsonUsernamePasswordAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);
|
||||
|
||||
http.logout().logoutRequestMatcher(new AntPathRequestMatcher("/auth/logout")).logoutSuccessHandler(new CustomLogoutSuccessHandler());
|
||||
http.logout().logoutRequestMatcher(new AntPathRequestMatcher("/auth/logout")).logoutSuccessHandler(new CustomLogoutSuccessHandler(egovJwtTokenUtil, adminLogsService));
|
||||
|
||||
return http.build();
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue