수정건 수정

This commit is contained in:
USER
2022-08-31 12:25:39 +09:00
parent 188a6112b4
commit 648a16ad4f
23 changed files with 182 additions and 127 deletions

View File

@@ -10,6 +10,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service;
import kr.co.uplus.ez.api.comm.dto.Auth;
@@ -24,6 +26,7 @@ import kr.co.uplus.ez.api.comm.dto.MenuResDto;
import kr.co.uplus.ez.api.comm.dto.RefreshTokenReqDto;
import kr.co.uplus.ez.api.comm.dto.RefreshTokenResDto;
import kr.co.uplus.ez.common.data.ApiResponseCode;
import kr.co.uplus.ez.common.jwt.JwtService;
import kr.co.uplus.ez.common.utils.SpringUtils;
@Service
@@ -39,6 +42,9 @@ public class CommService {
@Qualifier("sqlSessionTemplateDb2")
private SqlSessionTemplate sqlSessionSlave;
@Autowired
private JwtService jwtSvc;
/**
* date : 2022. 4. 26.
* auth : ckr
@@ -106,16 +112,15 @@ public class CommService {
* @return RefreshTokenResDto
*/
public RefreshTokenResDto refreshToken(RefreshTokenReqDto refreshTokenReqDto) {
// 1. 리프레시 토큰 조회.
// 2. AuthToken 생성.
// 3. 응답.
RefreshTokenResDto result = new RefreshTokenResDto(ApiResponseCode.SUCCESS);
// 1. AuthToken 생성.
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
if(auth != null) {
String authToken = jwtSvc.generatePrivateToken(auth);
// 2. 응답.
return new RefreshTokenResDto(ApiResponseCode.SUCCESS, authToken);
}
// 2. 응답.
RefreshTokenResDto result = new RefreshTokenResDto(ApiResponseCode.SUCCESS, null);
return result;
}

View File

@@ -12,7 +12,7 @@ import lombok.Data;
public class RefreshTokenResDto extends ResponseMessage implements Serializable{
@ApiModelProperty(example = "데이터")
private RefreshToken data;
private String data;
public RefreshTokenResDto() {
this.retCode = ApiResponseCode.SUCCESS.getResultCode();
@@ -24,7 +24,7 @@ public class RefreshTokenResDto extends ResponseMessage implements Serializable{
this.retMsg = returnStr.getResultMsg();
}
public RefreshTokenResDto(ApiResponseCode returnStr, RefreshToken data) {
public RefreshTokenResDto(ApiResponseCode returnStr, String data) {
this.retCode = returnStr.getResultCode();
this.retMsg = returnStr.getResultMsg();
this.data = data;

View File

@@ -921,7 +921,9 @@ public class CustMgtService {
custMgtMapper.updateAdminInfoTotal(updateAdminInfoTotalReqDto);
// 2. 메모정보 insert
custMgtMapper.insertMemo(updateAdminInfoTotalReqDto);
if(StringUtils.isNotEmpty(updateAdminInfoTotalReqDto.getMemo())) {
custMgtMapper.insertMemo(updateAdminInfoTotalReqDto);
}
// 3. 발송 한도 update
if (updateAdminInfoTotalReqDto.getSendingLimit() != null) {

View File

@@ -144,8 +144,9 @@ public class LoginController {
loginSuccessHandler.process(request, response, authentication);
// Auth 토큰 생성
String authToken = jwtSvc.generatePrivateToken(response, authentication);
// jwtSvc.generatePrivateToken(response, authentication);
String authToken = jwtSvc.generatePrivateToken(authentication);
// Create RefreshToken
String refreshToken = jwtSvc.refreshToken(authentication);
String nextUrl = getReturnUrl(request, response);
logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl);
@@ -169,8 +170,6 @@ public class LoginController {
menuUrls.add(menuUrl);
}
}
//String menuUrl = rootMenu.getChildren().get(j).getMenuUrl();
// menuUrls.add(menuUrl);
}
LoginRes loginRes = new LoginRes(rootUrl);
@@ -178,6 +177,7 @@ public class LoginController {
loginRes.setUserNm(authUser.getOprtrNm());
loginRes.setMenuUrls(menuUrls);
loginRes.setAuthToken(authToken);
loginRes.setRefreshToken(refreshToken);
ChkAuthNumResDto result = new ChkAuthNumResDto(ApiResponseCode.SUCCESS, loginRes);
return result;
@@ -192,8 +192,9 @@ public class LoginController {
rCode = loginSuccessHandler.process(request, response, authentication);
// loginToken
String authToken = jwtSvc.generatePrivateToken(response, authentication);
// jwtSvc.generatePrivateToken(response, authentication);
String authToken = jwtSvc.generatePrivateToken(authentication);
// Create RefreshToken
String refreshToken = jwtSvc.refreshToken(authentication);
String nextUrl = getReturnUrl(request, response);
logger.debug("login SUCCESS - nextUrl = [{}]", nextUrl);
@@ -224,6 +225,8 @@ public class LoginController {
loginRes.setUserId(authUser.getOprtrId());
loginRes.setUserNm(authUser.getOprtrNm());
loginRes.setAuthToken(authToken);
loginRes.setRefreshToken(refreshToken);
loginRes.setMenuUrls(menuUrls);
ChkAuthNumResDto result = new ChkAuthNumResDto(rCode, loginRes);

View File

@@ -20,9 +20,15 @@ public class LoginRes implements Serializable {
private String userNm;
/** 접근 토큰*/
@ApiModelProperty(hidden = true)
private String accessToken;
/** 권한 토큰*/
private String authToken;
@ApiModelProperty(hidden = true)
private String authToken;
/** 리프레쉬 토큰*/
@ApiModelProperty(hidden = true)
private String refreshToken;
/** 메뉴 url*/
private ArrayList<String> menuUrls;

View File

@@ -11,6 +11,9 @@ import io.swagger.annotations.ApiResponses;
import kr.co.uplus.ez.api.sysMgt.dto.*;
import kr.co.uplus.ez.common.components.ValidComponents;
import kr.co.uplus.ez.common.data.ApiResponseCode;
import org.apache.http.HttpStatus;
import org.apache.http.protocol.HTTP;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -51,12 +54,12 @@ public class SysMgtController {
@ApiResponses({ @ApiResponse(code = HttpServletResponse.SC_OK, message = "SUCESS") })
@RequestMapping(value = "adminList", method = { RequestMethod.POST })
@ResponseBody
public AdminListResDto adminList(@RequestBody @Valid AdminListReqDto adminListReqDto, BindingResult bindingResult) {
public AdminListResDto adminList(@RequestBody @Valid AdminListReqDto adminListReqDto, BindingResult bindingResult, HttpServletResponse response) {
if (validComponents.validParameter(bindingResult)) {
return new AdminListResDto(ApiResponseCode.CM_PARAMETER_ERROR);
}
return sysService.adminList(adminListReqDto);
}

View File

@@ -35,7 +35,7 @@ public class JwtService {
@Qualifier("sqlSessionTemplateDb2")
private SqlSessionTemplate sqlSessionSlave;
public String generatePrivateToken(HttpServletResponse response, Authentication auth) {
public String generatePrivateToken(Authentication auth) {
Claims claims = coreClaims(auth, jwtProps.getPrivateTokenExpiration());
// 필요하면 다른 정보 추가
@@ -179,7 +179,7 @@ public class JwtService {
return generateToken(claims);
}
private String refreshToken(Authentication auth) {
public String refreshToken(Authentication auth) {
Claims claims = coreClaims(auth, jwtProps.getRefreshTokenExpiration());
return generateToken(claims);
}

View File

@@ -57,7 +57,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/v3/api-docs",
"/v3/api-docs/**",
"/",
"/socket/**"
"/socket/**",
"/api/v1/bo/sendNumMgt/filedownload"
};
private static final String[] AUTH_URL_ARRAY = {

View File

@@ -23,8 +23,8 @@ app.props:
private-token-expiration: 1800
part1: JwtPart1
part2: JwtPart2
access-token-expiration: 180
refresh-token-expiration: 1800
access-token-expiration: 600
refresh-token-expiration: 5400
header: Authorization
prefix: "Bearer "

View File

@@ -28,10 +28,10 @@ See here for more details: http://gordondickens.com/wordpress/2013/03/27/sawing-
</encoder>
</appender>
<logger name="org.springframework" level="info"/>
<logger name="org.springframework.security" level="info"/>
<logger name="org.springframework.boot" level="info"/>
<logger name="com.zaxxer.hikari.HikariConfig" level="info"/>
<logger name="org.springframework" level="off"/>
<logger name="org.springframework.security" level="off"/>
<logger name="org.springframework.boot" level="off"/>
<logger name="com.zaxxer.hikari.HikariConfig" level="off"/>
<logger name="reactor.netty" level="info" />
<logger name="io.lettuce.core" level="info" />
<logger name="org.thymeleaf" level="info"/>
@@ -51,7 +51,6 @@ See here for more details: http://gordondickens.com/wordpress/2013/03/27/sawing-
<logger name="jdbc.resultset" level="OFF" />
<logger name="jdbc.resultsettable" level="DEBUG" />
<logger name="jdbc.connection" level="OFF" />
<logger name="org.mongodb.driver" level="OFF"/>
<springProfile name="local,dev">
@@ -61,7 +60,7 @@ See here for more details: http://gordondickens.com/wordpress/2013/03/27/sawing-
</root>
</springProfile>
<springProfile name="stg,prd">
<root level="info">
<root level="debug">
<appender-ref ref="console"/>
<appender-ref ref="FILE"/>
</root>