Merge branch 'jenkins_with_weblogic' of http://192.168.240.178:18080/eapim/elink-online-common.git into jenkins_with_weblogic
This commit is contained in:
+15
-53
@@ -163,7 +163,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
// 레이아웃 메시지 타입 REST URL 추출 시 활용. Default JSON
|
// 레이아웃 메시지 타입 REST URL 추출 시 활용. Default JSON
|
||||||
String messageType = prop.getProperty("MESSAGE_TYPE", MessageType.JSON);
|
String messageType = prop.getProperty("MESSAGE_TYPE", MessageType.JSON);
|
||||||
String inboundMethod = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_METHOD, "POST");
|
String inboundMethod = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_METHOD, "POST");
|
||||||
String inboundToken = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_TOKEN, "");
|
//String inboundToken = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_TOKEN, "");
|
||||||
|
|
||||||
//Outbound 요청에 대한 응답 메시지의 복호화 여부 결정위해 jwhong
|
//Outbound 요청에 대한 응답 메시지의 복호화 여부 결정위해 jwhong
|
||||||
encryptResponseApply = StringUtils.equalsIgnoreCase(prop.getProperty("ENCRYPT_RESPONSE_APPLY", "N"), "Y");
|
encryptResponseApply = StringUtils.equalsIgnoreCase(prop.getProperty("ENCRYPT_RESPONSE_APPLY", "N"), "Y");
|
||||||
@@ -380,7 +380,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
// assignPostBody(dataObject, contentType, vo.getEncode(), method);
|
// assignPostBody(dataObject, contentType, vo.getEncode(), method);
|
||||||
//assignPostBody(dataContent, contentType, vo.getEncode(), method); // jwhong commnet
|
//assignPostBody(dataContent, contentType, vo.getEncode(), method); // jwhong commnet
|
||||||
// KJBank API 추적정보를 Header에 제공. jwhong
|
// KJBank API 추적정보를 Header에 제공. jwhong
|
||||||
// String inboundToken= assignRequestKJHeaders(method, prop, tempProp );
|
String inboundToken= assignRequestKJHeaders(method, prop, tempProp );
|
||||||
assignPostBody(dataContent, contentType, vo.getEncode(), method, vo.getAdapterName(), auth, inboundToken, currentDate);
|
assignPostBody(dataContent, contentType, vo.getEncode(), method, vo.getAdapterName(), auth, inboundToken, currentDate);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -398,9 +398,6 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
// Adapter 레벨 header 보다 data로 넘어온 httpHeader를 우선 적용(header명이 같다면 덮어씀)
|
// Adapter 레벨 header 보다 data로 넘어온 httpHeader를 우선 적용(header명이 같다면 덮어씀)
|
||||||
assignRequestHeaders(method, httpHeader, prop);
|
assignRequestHeaders(method, httpHeader, prop);
|
||||||
|
|
||||||
// KJBank API 추적정보를 Header에 제공. jwhong
|
|
||||||
//assignRequestKJHeaders(method, prop, tempProp );
|
|
||||||
|
|
||||||
int status = -1;
|
int status = -1;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -622,6 +619,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
responseMessage = jsonStr.getBytes(vo.getEncode());
|
responseMessage = jsonStr.getBytes(vo.getEncode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return assignResponseHeaders(method, responseMessage, headerGroupName, vo.getEncode(), messageType,
|
return assignResponseHeaders(method, responseMessage, headerGroupName, vo.getEncode(), messageType,
|
||||||
relayResponseHeaderKeys, status, responseHeaderProp);
|
relayResponseHeaderKeys, status, responseHeaderProp);
|
||||||
} catch (SocketTimeoutException ste) { // Read Timeout :: HttpClient 3.1일 경우
|
} catch (SocketTimeoutException ste) { // Read Timeout :: HttpClient 3.1일 경우
|
||||||
@@ -874,6 +872,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* KJBank Target System으로 요청 보낼때 header에 clientId(업체정보), APIM거래추적자(UUID), 최초 요청시간, guid 추가해서 보낸다. jwhong
|
* KJBank Target System으로 요청 보낼때 header에 clientId(업체정보), APIM거래추적자(UUID), 최초 요청시간, guid 추가해서 보낸다. jwhong
|
||||||
|
* token 만 return 하는것으로 수정함
|
||||||
*/
|
*/
|
||||||
private String assignRequestKJHeaders(HttpUriRequestBase method, Properties prop, Properties tempProp){
|
private String assignRequestKJHeaders(HttpUriRequestBase method, Properties prop, Properties tempProp){
|
||||||
|
|
||||||
@@ -920,51 +919,6 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
if (authorization != null && authorization.startsWith("Bearer ")) {
|
if (authorization != null && authorization.startsWith("Bearer ")) {
|
||||||
jwtToken = authorization.substring(7); // "Bearer " 이후의 JWT만 추출
|
jwtToken = authorization.substring(7); // "Bearer " 이후의 JWT만 추출
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
String headerRelay = PropManager.getInstance().getProperty("HEADER_RELAY_ADAPTER","adapter.name");
|
|
||||||
Set<String> values = new HashSet<>(Arrays.asList(headerRelay.split(",")));
|
|
||||||
String inputAdapter = tempProp.getProperty(HttpAdapterServiceKey.OUT_ADAPTER_GROUP_NAME, "");
|
|
||||||
|
|
||||||
String[] parts = inputAdapter.split("_");
|
|
||||||
String target = parts[1]; // adapter name의 앞의 3자리
|
|
||||||
String adapterName = target.substring(0, 3);
|
|
||||||
|
|
||||||
if (values.contains(adapterName)) {
|
|
||||||
|
|
||||||
/* 업체정보 */
|
|
||||||
String clientId = JwtClientIdExtractor(jwtToken);
|
|
||||||
method.setHeader("clientId", clientId);
|
|
||||||
|
|
||||||
/* APIM 거래추적자 */
|
|
||||||
String uuid = tempProp.getProperty(TransactionContextKeys.TRANSACTION_UUID, "");
|
|
||||||
method.setHeader("traceId", uuid);
|
|
||||||
|
|
||||||
/* GUID */
|
|
||||||
String guid = tempProp.getProperty(TransactionContextKeys.GUID, "");
|
|
||||||
method.setHeader("guid", guid);
|
|
||||||
|
|
||||||
/* 최초요청시간 */
|
|
||||||
String receivedTimestamp = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_REQUESTED_TIME, "");
|
|
||||||
method.setHeader("receivedTimestamp", receivedTimestamp);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* 업체정보 */
|
|
||||||
//String clientId = JwtClientIdExtractor(jwtToken);
|
|
||||||
//method.setHeader("clientId", clientId);
|
|
||||||
|
|
||||||
/* APIM 거래추적자 */
|
|
||||||
//String uuid = tempProp.getProperty(TransactionContextKeys.TRANSACTION_UUID, "");
|
|
||||||
//method.setHeader("traceId", uuid);
|
|
||||||
|
|
||||||
/* GUID */
|
|
||||||
//String guid = tempProp.getProperty(TransactionContextKeys.GUID, "");
|
|
||||||
//method.setHeader("guid", guid);
|
|
||||||
|
|
||||||
/* 최초요청시간 */
|
|
||||||
//String receivedTimestamp = tempProp.getProperty(HttpAdapterServiceKey.INBOUND_REQUESTED_TIME, "");
|
|
||||||
//method.setHeader("receivedTimestamp", receivedTimestamp);
|
|
||||||
|
|
||||||
return jwtToken;
|
return jwtToken;
|
||||||
}
|
}
|
||||||
@@ -991,7 +945,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
private void assignPostBody(Object eaiBody, String contentType, String charset, HttpUriRequestBase method, String adapterName, String niceAuth, String inboundToken, Date currentDate) {
|
private void assignPostBody(Object eaiBody, String contentType, String charset, HttpUriRequestBase method, String adapterName, String niceAuth, String inboundToken, Date currentDate) throws Exception {
|
||||||
if (eaiBody == null) {
|
if (eaiBody == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -1031,7 +985,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
}
|
}
|
||||||
|
|
||||||
// from here by jwhong
|
// from here by jwhong
|
||||||
private String doOutboundPreFilter(Object eaiBody, String adapterName, String niceAuth, String inboundToken, Date currentDate) {
|
private String doOutboundPreFilter(Object eaiBody, String adapterName, String niceAuth, String inboundToken, Date currentDate) throws Exception {
|
||||||
|
|
||||||
Properties properties = AdapterPropManager.getInstance().getProperties(adapterName); // jwhong
|
Properties properties = AdapterPropManager.getInstance().getProperties(adapterName); // jwhong
|
||||||
String encryptAlgorithm = properties.getProperty("ENCRYPT_ALGORITHM",""); // jwhong
|
String encryptAlgorithm = properties.getProperty("ENCRYPT_ALGORITHM",""); // jwhong
|
||||||
@@ -1071,7 +1025,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
return responseMessage;
|
return responseMessage;
|
||||||
|
|
||||||
}
|
}
|
||||||
private String doOutboundPreEncrypt(Object eaiBody, String encryptAlgorithm, String clientSecretKey, String encryptAES256Iv, String encryptAES256Key, String certPath, Date currentDate) {
|
private String doOutboundPreEncrypt(Object eaiBody, String encryptAlgorithm, String clientSecretKey, String encryptAES256Iv, String encryptAES256Key, String certPath, Date currentDate) throws Exception {
|
||||||
|
|
||||||
String encryptedMessage = "";
|
String encryptedMessage = "";
|
||||||
String encryptedJsonKey = "";
|
String encryptedJsonKey = "";
|
||||||
@@ -1090,6 +1044,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES128 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES128 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES128 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES128-TOGETHER":
|
case "AES128-TOGETHER":
|
||||||
@@ -1099,6 +1054,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES128 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES128 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES128 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES256":
|
case "AES256":
|
||||||
@@ -1108,6 +1064,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES256 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES256-KAKAO":
|
case "AES256-KAKAO":
|
||||||
@@ -1116,6 +1073,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES256 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES256-TOSS":
|
case "AES256-TOSS":
|
||||||
@@ -1124,6 +1082,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES256 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES256-NICEON":
|
case "AES256-NICEON":
|
||||||
@@ -1135,6 +1094,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256 Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES256 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "AES256GCM":
|
case "AES256GCM":
|
||||||
@@ -1147,6 +1107,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256GCM Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256GCM Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, AES256GCM Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "ECDHESA256":
|
case "ECDHESA256":
|
||||||
@@ -1168,6 +1129,7 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("HttpClientAdapterServiceRest] AES256GCM Encryption error=" + e.getMessage());
|
logger.error("HttpClientAdapterServiceRest] AES256GCM Encryption error=" + e.getMessage());
|
||||||
|
throw new Exception("[HttpClient5AdapterServiceRest] Pre Encrypt Error : Encrypted Error, ECDHESA256 Key Invalid");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|||||||
Reference in New Issue
Block a user