프로퍼티암호화

This commit is contained in:
JSYOO 2021-12-21 11:39:49 +09:00
parent 8f1716a430
commit 8b5bbfcb57
6 changed files with 181 additions and 121 deletions

View File

@ -0,0 +1,50 @@
package nlib.cmm.web;
import java.util.List;
import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import nlib.cmm.NlibCommonController;
/**
* <pre>
* @Class Name : EncryptorConfigTest.java
*
* @Description : properties 암호화 로그 테스트
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 12. 21. KNKIM 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP KNKIM
* @since 2021. 12. 21.
* @version 1.0
*
*/
@Controller
public class EncryptorConfigTest {
private static final Logger log = LoggerFactory.getLogger(EncryptorConfigTest.class);
static void EncryptorTest(String key, List<String> valueList) {
StandardPBEStringEncryptor pbeEnc = new StandardPBEStringEncryptor();
pbeEnc.setAlgorithm("PBEWithMD5AndDES");
pbeEnc.setPassword(key); // PBE (XML PASSWORD설정)
for( int i = 0; i< valueList.size();i++)
{
log.debug(valueList.get(i).toString() +" : " + pbeEnc.encrypt(valueList.get(i).toString()));
}
}
}

View File

@ -3,6 +3,7 @@ package nlib.cmm.web;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -11,7 +12,6 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.core.Authentication;
@ -134,29 +134,7 @@ public class MainController extends NlibCommonController {
// 메인 화면 배너
List<Map<String, String>> listBannerInfos = mainService.listBannerInfos(mngOrgCd);
model.addAttribute("listBannerInfos", listBannerInfos);
StandardPBEStringEncryptor pbeEnc = new StandardPBEStringEncryptor();
pbeEnc.setAlgorithm("PBEWithMD5AndDES");
pbeEnc.setPassword("jasyptPass"); // PBE (XML PASSWORD설정)
String url = pbeEnc.encrypt("jdbc:oracle:thin:@127.0.0.1:1521:XE");
String username = pbeEnc.encrypt("system");
String password = pbeEnc.encrypt("uac_cltr");
System.out.println(url);
System.out.println(username);
System.out.println(password);
return "nlib/cmm/home";
}

View File

@ -32,7 +32,7 @@ Globals.DbType = maria
Globals.maria.DriverClassName=org.mariadb.jdbc.Driver
Globals.maria.Url=jdbc:mariadb://210.181.197.70:3306/uac_cltr_db
Globals.maria.UserName = uac_cltr
Globals.maria.Password = ENC(ZOAYPkDYSoB/UM5h9/nzQoswgHYfhjA/)
Globals.maria.Password = ENC(79UHzZdkigwDg939vEgnjcPYfRYHh88y)
# \uad8c\ud55c \uc778\uc99d\ubc29\uc2dd(dummy, session, security) - \uc0ac\uc6a9\uc790\uc758 \ub85c\uadf8\uc778\uc2dc \uc778\uc99d \ubc29\uc2dd\uc744 \uacb0\uc815\ud568
# dummy : \ub354\ubbf8 \ubc29\uc2dd\uc73c\ub85c \uc0ac\uc6a9\uc790 \uad8c\ud55c\uc744 \uc778\uc99d\ud568
@ -153,5 +153,5 @@ roughMap.appkey = b0fdac4f718d71a02d796f8fe3e12987
#\uba54\uc77c \uacc4\uc815 \uc815\ubcf4
system.notification.email.sender = teachteam02@gmail.com
system.notification.email.sender.password = ENC(4hXQB6LLZ6nDK/aCkIEPOg9EKQar02JgzRq/qjEVh40=)
system.notification.email.sender.password = ENC(AlvwMj7hcqcIZYJiU/RvSABIRl0WmVMzqIPecTeH2Uw=)
system.notification.email.sender.name = \ud55c\uad6d\ubb38\ud654\uc6d0\uc5f0\ud569\ud68c

View File

@ -17,9 +17,9 @@
<select id="selectNCultureOpenTime" parameterType="String" resultType="HashMap">
SELECT
IFNULL(OPEN_TIME,'09:00')
, IFNULL(CLOSED_TIME,'18:00')
, IFNULL(CLOSING_INFO, '관공서의 휴관일 및 국가가 정한 임시 공휴일 휴관')
IFNULL(OPEN_TIME,'09:00') AS OPEN_TIME
, IFNULL(CLOSED_TIME,'18:00') AS CLOSED_TIME
, IFNULL(CLOSING_INFO, '관공서의 휴관일 및 국가가 정한 임시 공휴일 휴관') AS CLOSING_INFO
FROM SM_DEPT A
WHERE A.ORG_CD = #{orgCd}
</select>

View File

@ -65,13 +65,14 @@
<bean id="antPathMater" class="org.springframework.util.AntPathMatcher" />
<bean id="defaultTraceHandler" class="egovframework.rte.fdl.cmmn.trace.handler.DefaultTraceHandler" />
<bean id="environmentVariablesConfiguration" class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
<!-- global 프로퍼티 암호화 -->
<bean id="environmentVariablesConfiguration" class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
<property name="algorithm" value="PBEWithMD5AndDES" />
<property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" />
<!-- <property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" /> -->
</bean>
<bean id="configurationEncryptor" class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
<property name="config" ref="environmentVariablesConfiguration" />
<property name="password" value="jasyptPass" />
<property name="password" value="gdyYs/IZqY86VcWhT8emCYfqY1ahw2vtLG+/FzNqtrQ=" />
</bean>
<bean id="propertyConfig" class="org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer">

View File

@ -1,5 +1,4 @@
#-----------------------------------------------------------------------
#
# nlib.properties : \uc628\ub77c\uc778\uc790\ub8cc\ub300\ucd9c\uad00\ub9ac\uc2dc\uc2a4\ud15c
#
# @\ud504\ub85c\uc81d\ud2b8\uba85: \uc9c0\ubc29\ubb38\ud654\uc6d0 \ud1b5\ud569\uc790\ub8cc\uad00\ub9ac\uc2dc\uc2a4\ud15c \uad6c\ucd95\uc0ac\uc5c5 (2021)
@ -37,7 +36,7 @@ login.back.url = /login/loginGuide.do
# \ud734\uba74\uacc4\uc88c \ud574\uc9c0\uc548\ub0b4 \uc8fc\uc18c
login.dormant.url = /login/activateDormantAccForm.do
# \uc9c0\ubc29\ubb38\ud654\uc6d0\uc5d0\uc11c \uc811\uc18d\uc2dc \ub9ac\ub2e4\uc774\ub809\ud2b8\ub420 URL \uc815\ubcf4
# \uc9c0\ubc29\ubb38\ud654\uc6d0\uc5d0\uc11c \uc811\uc18d\uc2dc \ub9ac\ub2e4\uc774\ub809\ud2b8\ub420 \ub85c\uadf8\uc778\ud654\uba74 URL \uc815\ubcf4
nculture.login.redirect.uri = /login/loginForm.do
# SNS\uc0ac\uc6a9\uc790 \uc778\uc99d \ubc0f \ucf5c\ubc31 \ucc98\ub9ac \ud6c4, \ud574\ub2f9 \uc9c0\ubc29\ubb38\ud654\uc6d0\uc73c\ub85c \uc774\ub3d9\ud558\uc5ec \ud6c4\ucc98\ub9ac\ub420 URL : \ub85c\uadf8\uc778\uc6a9
@ -46,7 +45,7 @@ nculture.login.post.login.redirect.uri = /login/loginCouncilSSO.do
# SNS\uc0ac\uc6a9\uc790 \uc778\uc99d \ubc0f \ucf5c\ubc31 \ucc98\ub9ac \ud6c4, \ud574\ub2f9 \uc9c0\ubc29\ubb38\ud654\uc6d0\uc73c\ub85c \uc774\ub3d9\ud558\uc5ec \ud6c4\ucc98\ub9ac\ub420 URL : \ud68c\uc6d0\uac00\uc785\uc6a9
nculture.login.post.member.redirect.uri = /member/selectMemberJoiningInfo.do
nculture.login.preset.redirect.url = https://nlib-dev.nculture.org/login/loginPreSet.do
# \uc9c0\ubc29\ubb38\ud654\uc6d0\uc5d0\uc11c \uc811\uc18d\uc2dc \ub9ac\ub2e4\uc774\ub809\ud2b8\ub420 \ud68c\uc6d0\uac00\uc785\ud654\uba74 URL \uc815\ubcf4
nculture.member.redirect.uri = /login/memberSnsForm.do
#----------------------------------------
@ -55,34 +54,30 @@ nculture.member.redirect.uri = /login/memberSnsForm.do
# \uacf5\ud1b5 \uc9c0\ubc29\ubb38\ud654\uc6d0\uc815\ubcf4 \ucf54\ub4dc
nlib.council.cd = KCCF
nlib.council.nm = \uc9c0\ubc29\ubb38\ud654\uc6d0
nlib.council.dns.host = nlib
# \uac1c\ubc1c\uc11c\ubc84
nlib.council.dns.host = nlib-dev
# \uc6b4\uc601\uc11c\ubc84
#nlib.council.dns.host = nlib
#----------------------------------------
# DataAPI \uc811\uc18d\uc815\ubcf4
#----------------------------------------
# \uac1c\ubc1c \uc11c\ubc84
# \uac1c\ubc1c\uc11c\ubc84
dataapi.server.ip = 210.181.197.70
dataapi.server.port = 8080
dataapi.server.protocol = http
# \uc784\uc2dc PC \uac1c\ubc1c \uc11c\ubc84
#dataapi.server.ip = 192.168.25.87
#dataapi.server.port = 8080
#dataapi.server.protocol = http
# \ub85c\uceec \uc11c\ubc84
#dataapi.server.ip = localhost
# \uc6b4\uc601\uc11c\ubc84
#dataapi.server.ip = 210.181.197.70
#dataapi.server.port = 8088
#dataapi.server.protocol = http
# \ub85c\uceec \uac1c\ubc1c\uc6a9 XML \ud30c\uc77c \uc704\uce58
dataapi.temp.xml.path = C:/iams/workspace/nlib/data/dataxml
# Aria \uc54c\uace0\ub9ac\uc998
crypto.aria.defaultKey = gdyYs/IZqY86VcWhT8emCYfqY1ahw2vtLG+/FzNqtrQ=
#----------------------------------------
# \ubaa9\ub85d \ud398\uc774\uc9d5
#----------------------------------------
@ -93,19 +88,26 @@ list.paging.page.size = 10
# \uba54\uc778\ud654\uba74 \uae30\ubcf8 \ubc30\ub108
#----------------------------------------
# \uba54\uc778\ud654\uba74 \uae30\ubcf8 \ubc30\ub108 \uc704\uce58
# \ub85c\uceec \uc11c\ubc84
# \ub85c\uceec\uc11c\ubc84
#main.banner.img.path = C:/iams/workspace/nlib/src/main/webapp/images/bg/bg-mainbanner.jpg
# \uac1c\ubc1c\uc11c\ubc84
main.banner.img.path = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/images/bg/bg-mainbanner.jpg
# \uc6b4\ub3d9\uc11c\ubc84
#main.banner.img.path = /kccf/nlibhome/images/bg/bg-mainbanner.jpg
#----------------------------------------
# Q&A \ucca8\ubd80\ud30c\uc77c \uc5c5\ub85c\ub4dc \uad00\ub828
#----------------------------------------
# \ucca8\ubd80\ud30c\uc77c \ucd5c\uc0c1\uc704 \uc704\uce58
# \ub85c\uceecPC
#fileupload.base.path = C:/iams/workspace/nlib/data/fileupload
# \uac1c\ubc1c\uc11c\ubc84
fileupload.base.path = /nfs_nas_dev/uac/nlib/qna
fileupload.base.path = /nfs_nas_dev/uac/nlib
# \uc6b4\uc601\uc11c\ubc84
#fileupload.base.path = /nfs_nas/uac/nlib
# \ucd5c\ub300 \ud30c\uc77c \ud06c\uae30 (MB)
fileupload.max.mbsize = 10
# \ucd5c\ub300 \ud30c\uc77c \uac1c\uc218
@ -118,24 +120,33 @@ fileupload.acceptable.ext = .jpg,.jpe,.jpge,.bmp,.gif,.png,.hwp,.hwpx,.pdf,.xls,
fileupload.temp.subpath = /temp
# \ubb3b\uace0\ub2f5\ud558\uae30 \uac8c\uc2dc\ud310 \uc11c\ube0c\uc704\uce58 : \ucca8\ubd80\ud30c\uc77c \ucd5c\uc0c1\uc704 \uc704\uce58 \uc774\ud558\uc758 \uc704\uce58 \uc815\ubcf4\ub97c \uc124\uc815
fileupload.bbs.qna.subpath = /bbs/qna
fileupload.bbs.ancmnt.subpath = /bbs/ancmnt
fileupload.bbs.qna.subpath = /qna
#----------------------------------------
# \uc774\uba54\uc77c \ud15c\ud50c\ub9bf \uacbd\ub85c
#----------------------------------------
# \ub85c\uceec\uc11c\ubc84
#mailing.sender.membership.signUpTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/signUp_mail_template.html
#mailing.sender.membership.pwdTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/pwd_mail_template.html
#mailing.sender.membership.certTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/cert_mail_template.html
# \uac1c\ubc1c\uc11c\ubc84
mailing.sender.membership.signUpTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/signUp_mail_template.html
mailing.sender.membership.pwdTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/pwd_mail_template.html
mailing.sender.membership.certTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/cert_mail_template.html
#mailing.sender.membership.signUpTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/signUp_mail_template.html
#mailing.sender.membership.pwdTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/pwd_mail_template.html
#mailing.sender.membership.certTemplate = C:/iams/workspace/nlib/src/main/webapp/WEB-INF/template/mail/cert_mail_template.html
#\uba54\uc77c \uc774\ubbf8\uc9c0 \uacbd\ub85c
# \ub85c\uceec
# \uac1c\ubc1c\uc11c\ubc84
mailing.sender.membership.signUpTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/signUp_mail_template.html
mailing.sender.membership.pwdTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/pwd_mail_template.html
mailing.sender.membership.certTemplate = /apps/tomcat/apache-tomcat-8.5.46_nlib/webapps/nlib/WEB-INF/template/mail/cert_mail_template.html
# \uc6b4\uc601\uc11c\ubc84
#mailing.sender.membership.signUpTemplate = /kccf/webapps/nlibhome/WEB-INF/template/mail/signUp_mail_template.html
#mailing.sender.membership.pwdTemplate = /kccf/webapps/nlibhome/WEB-INF/template/mail/pwd_mail_template.html
#mailing.sender.membership.certTemplate = /kccf/webapps/nlibhome/webapps/nlib/WEB-INF/template/mail/cert_mail_template.html
#\uba54\uc77c \uc774\ubbf8\uc9c0 \uacbd\ub85c\uc6a9 \ub3c4\uba54\uc778 URL
# \ub85c\uceec\uc11c\ubc84
host.name = https://nlib-dev.nculture.org
# \uac1c\ubc1c
# \uac1c\ubc1c\uc11c\ubc84
#host.name = https://nlib-dev.nculture.org
# \uc6b4\uc601\uc11c\ubc84
#host.name = https://nlib.nculture.org
#\uba54\uc77c \ubcf4\ub0b4\ub294 \uc8fc\uc18c
mailing.sender.membership.email = no-reply@nlib.org
@ -148,13 +159,20 @@ sms.sender.phone.number = 027042322
#----------------------------------------
# \uac80\uc0c9\uc5d4\uc9c4
#----------------------------------------
# \uac1c\ubc1c\uc11c\ubc84
search.searchIp = 210.181.197.67
search.searchPort = 7800
search.protocol = http
search.managerIp = 210.181.197.67
search.managerPort = 7800
# \uc6b4\uc601\uc11c\ubc84
#search.searchIp = 210.181.197.67
#search.searchPort = 7800
#search.protocol = http
#search.managerIp = 210.181.197.67
#search.managerPort = 7800
#----------------------------------------
# SNS SSO \ucc98\ub9ac URL \uc815\ubcf4 (\ud074\ub77c\uc774\uc5b8\ud2b8 \uc124\uc815\uc815\ubcf4 : context-oauth.xml \ucc38\uc870)
@ -205,11 +223,15 @@ cart.cookie.path = /
#----------------------------------------
# \uc378\ub124\uc77c \uae30\ubcf8 \uc774\ubbf8\uc9c0 (\uc378\ub124\uc77c \uc5c6\uc74c)
#----------------------------------------
thumbnail.image.url.prefix = https://iams-dev.nculture.org/uac
thumbnail.image.url.small = /images/thumbnail/noimage-s.jpg
thumbnail.image.url.middle = /images/thumbnail/noimage-m.jpg
thumbnail.image.url.big = /images/thumbnail/noimage-b.jpg
# \uac1c\ubc1c\uc11c\ubc84
thumbnail.image.url.prefix = https://iams-dev.nculture.org/uac
# \uc6b4\uc601\uc11c\ubc84
#thumbnail.image.url.prefix = https://iams.nculture.org/uac
#----------------------------------------
# \ub2e8\ucd95URL
@ -224,11 +246,20 @@ shorturl.api = https://local-dev.nculture.org/yourls-api.php?signature=d48a5ab90
# \uc6d0\ubb38\ubcf4\uae30
#----------------------------------------
# \uc6d0\ubb38\ubcf4\uae30 (PDF)
# \uac1c\ubc1c\uc11c\ubc84
pdf.url = https://port-dev.nculture.org/npdfView.do?npdf=N
# \uc6b4\uc601\uc11c\ubc84
#pdf.url = https://port.nculture.org/npdfView.do?npdf=N
# \uc6d0\ubb38\ubcf4\uae30 (IMAGE)
# \uac1c\ubc1c\uc11c\ubc84
image.url = https://port-dev.nculture.org/nImageView.do?nImage=N
# \uc6b4\uc601\uc11c\ubc84
#image.url = https://port.nculture.org/nImageView.do?nImage=N
# \uc6d0\ubb38\ubcf4\uae30 (VIDEO)
# \uac1c\ubc1c\uc11c\ubc84
video.url = https://port-dev.nculture.org/cmm/nvodView.do?nvod=N
# \uc6b4\uc601\uc11c\ubc84
#video.url = https://port.nculture.org/cmm/nvodView.do?nvod=N