2025-09-10 프로젝트 암호화 적용
This commit is contained in:
parent
499ac7ffeb
commit
dcf9c340c2
@ -28,6 +28,7 @@ import java.util.HashMap;
|
|||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovFileScrty;
|
||||||
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
public class StringUtil {
|
public class StringUtil {
|
||||||
|
|
||||||
@ -416,6 +417,8 @@ public class StringUtil {
|
|||||||
public static void main(String args[]) {
|
public static void main(String args[]) {
|
||||||
try {
|
try {
|
||||||
System.out.print(EgovFileScrty.encryptPassword("1", "kcctest"));
|
System.out.print(EgovFileScrty.encryptPassword("1", "kcctest"));
|
||||||
|
System.out.print(EgovNewPasswordUtil.hashPassword("1"));
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
System.out.println("Main Exception Error");
|
System.out.println("Main Exception Error");
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,7 +14,7 @@ import org.springframework.web.servlet.ModelAndView;
|
|||||||
|
|
||||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||||
import kcc.let.utl.fcc.service.CertUtil;
|
import kcc.let.utl.fcc.service.CertUtil;
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
public class CertController {
|
public class CertController {
|
||||||
@ -95,7 +95,9 @@ public class CertController {
|
|||||||
//3.오류시 문구
|
//3.오류시 문구
|
||||||
s_message = retMap.get("sResult").toString();
|
s_message = retMap.get("sResult").toString();
|
||||||
|
|
||||||
sn = EgovFileScrty.encryptPassword(s_SN,membSeq);
|
//sn = EgovFileScrty.encryptPassword(s_SN,membSeq);
|
||||||
|
sn = EgovNewPasswordUtil.hashPassword(s_SN);
|
||||||
|
|
||||||
}catch(Exception ex) {
|
}catch(Exception ex) {
|
||||||
System.out.println("Exception Occured!!!");
|
System.out.println("Exception Occured!!!");
|
||||||
|
|
||||||
|
|||||||
@ -12,9 +12,12 @@ import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
|||||||
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
||||||
import kcc.com.cmm.LoginVO;
|
import kcc.com.cmm.LoginVO;
|
||||||
import kcc.let.uat.uia.service.EgovLoginService;
|
import kcc.let.uat.uia.service.EgovLoginService;
|
||||||
|
import kcc.let.uss.umt.service.EgovUserManageService;
|
||||||
|
import kcc.let.uss.umt.service.UserManageVO;
|
||||||
import kcc.let.utl.fcc.service.EgovNumberUtil;
|
import kcc.let.utl.fcc.service.EgovNumberUtil;
|
||||||
import kcc.let.utl.fcc.service.EgovStringUtil;
|
import kcc.let.utl.fcc.service.EgovStringUtil;
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovFileScrty;
|
||||||
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 일반 로그인, 인증서 로그인을 처리하는 비즈니스 구현 클래스
|
* 일반 로그인, 인증서 로그인을 처리하는 비즈니스 구현 클래스
|
||||||
@ -40,6 +43,10 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
@Resource(name="loginDAO")
|
@Resource(name="loginDAO")
|
||||||
private LoginDAO loginDAO;
|
private LoginDAO loginDAO;
|
||||||
|
|
||||||
|
/** userManageService */
|
||||||
|
@Resource(name = "userManageService")
|
||||||
|
private EgovUserManageService userManageService;
|
||||||
|
|
||||||
///** EgovSndngMailRegistService */
|
///** EgovSndngMailRegistService */
|
||||||
//@Resource(name = "sndngMailRegistService")
|
//@Resource(name = "sndngMailRegistService")
|
||||||
//private EgovSndngMailRegistService sndngMailRegistService;
|
//private EgovSndngMailRegistService sndngMailRegistService;
|
||||||
@ -53,19 +60,75 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public LoginVO actionLogin(LoginVO vo) throws Exception {
|
public LoginVO actionLogin(LoginVO vo) throws Exception {
|
||||||
|
//step1.new 로그인인 경우 loginvo ret
|
||||||
|
//step2.legacy 로그인인 경우 new password로 업데이트 후 loginvo ret
|
||||||
|
//step3.둘다 아니면 loginvo ret
|
||||||
|
LoginVO loginVO = null;
|
||||||
|
String s_password = vo.getPassword();
|
||||||
|
System.out.println("======1========================"+s_password);
|
||||||
|
System.out.println("======1========================"+EgovNewPasswordUtil.hashPassword(s_password));
|
||||||
|
System.out.println("======1========================"+EgovFileScrty.encryptPassword(s_password, vo.getId()));
|
||||||
|
|
||||||
|
//step1.new 로그인인 경우 loginvo ret
|
||||||
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
||||||
// 1. 입력한 비밀번호를 암호화한다.
|
// 1. 입력한 비밀번호를 암호화한다.
|
||||||
if("USR".equals(vo.getUserSe())) {
|
if("USR".equals(vo.getUserSe())) {
|
||||||
String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
//String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
||||||
|
String enpassword = EgovNewPasswordUtil.hashPassword(s_password);
|
||||||
vo.setPassword(enpassword);
|
vo.setPassword(enpassword);
|
||||||
}
|
}
|
||||||
|
System.out.println("======2========================"+s_password);
|
||||||
|
|
||||||
// 2. 아이디와 암호화된 비밀번호가 DB와 일치하는지 확인한다.
|
// 2. 아이디와 암호화된 비밀번호가 DB와 일치하는지 확인한다.
|
||||||
LoginVO loginVO = loginDAO.actionLogin(vo);
|
loginVO = loginDAO.actionLoginNew(vo);
|
||||||
|
System.out.println("======3========================"+s_password);
|
||||||
|
System.out.println("======3========================"+loginVO.getPassword());
|
||||||
|
if (EgovNewPasswordUtil.matches(s_password, loginVO.getPassword())) {
|
||||||
|
return loginVO;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
loginVO = loginDAO.actionLogin(vo);
|
||||||
|
|
||||||
// 3. 결과를 리턴한다.
|
// 3. 결과를 리턴한다.
|
||||||
if (loginVO != null && !loginVO.getId().equals("") && !loginVO.getPassword().equals("")) {
|
if (loginVO != null && !loginVO.getId().equals("") && !loginVO.getPassword().equals("")) {
|
||||||
|
return loginVO;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
System.out.println("======4========================"+s_password);
|
||||||
|
|
||||||
|
//step2.legacy 로그인인 경우 new password로 업데이트 후 loginvo ret
|
||||||
|
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
||||||
|
// 1. 입력한 비밀번호를 암호화한다.
|
||||||
|
if("USR".equals(vo.getUserSe())) {
|
||||||
|
String enpassword = EgovFileScrty.encryptPassword(s_password, vo.getId());
|
||||||
|
//String enpassword = EgovNewPasswordUtil.hashPassword(vo.getPassword());
|
||||||
|
vo.setPassword(enpassword);
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println("======5========================"+s_password);
|
||||||
|
|
||||||
|
// 2. 아이디와 암호화된 비밀번호가 DB와 일치하는지 확인한다.
|
||||||
|
loginVO = loginDAO.actionLogin(vo);
|
||||||
|
|
||||||
|
System.out.println("======6========================"+s_password);
|
||||||
|
|
||||||
|
// 3. 결과를 리턴한다.
|
||||||
|
if (loginVO != null && !loginVO.getId().equals("") && !loginVO.getPassword().equals("")) {
|
||||||
|
//패스워드를 newpassword로 변경
|
||||||
|
UserManageVO userManageVO = new UserManageVO();
|
||||||
|
userManageVO.setUniqId(vo.getId());
|
||||||
|
userManageVO.setPassword(EgovNewPasswordUtil.hashPassword(s_password)); //입력한 비밀번호 암호화
|
||||||
|
userManageService.updatePasswordR(userManageVO);
|
||||||
|
|
||||||
|
System.out.println("======7========================"+s_password);
|
||||||
|
|
||||||
|
/*
|
||||||
|
PASSWORD = #password#
|
||||||
|
WHERE ESNTL_ID = #uniqId#
|
||||||
|
*/
|
||||||
|
|
||||||
return loginVO;
|
return loginVO;
|
||||||
} else {
|
} else {
|
||||||
loginVO = new LoginVO();
|
loginVO = new LoginVO();
|
||||||
@ -80,7 +143,8 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
||||||
// 1. 입력한 비밀번호를 암호화한다.
|
// 1. 입력한 비밀번호를 암호화한다.
|
||||||
if("USR".equals(vo.getUserSe())) {
|
if("USR".equals(vo.getUserSe())) {
|
||||||
String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
//String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
||||||
|
String enpassword = EgovNewPasswordUtil.hashPassword(vo.getPassword());
|
||||||
vo.setPassword(enpassword);
|
vo.setPassword(enpassword);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -193,7 +257,8 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
|
|
||||||
// 3. 임시 비밀번호를 암호화하여 DB에 저장한다.
|
// 3. 임시 비밀번호를 암호화하여 DB에 저장한다.
|
||||||
LoginVO pwVO = new LoginVO();
|
LoginVO pwVO = new LoginVO();
|
||||||
String enpassword = EgovFileScrty.encryptPassword(newpassword, vo.getId());
|
//String enpassword = EgovFileScrty.encryptPassword(newpassword, vo.getId());
|
||||||
|
String enpassword = EgovNewPasswordUtil.hashPassword(newpassword);
|
||||||
pwVO.setId(vo.getId());
|
pwVO.setId(vo.getId());
|
||||||
pwVO.setPassword(enpassword);
|
pwVO.setPassword(enpassword);
|
||||||
pwVO.setUserSe(vo.getUserSe());
|
pwVO.setUserSe(vo.getUserSe());
|
||||||
@ -220,7 +285,8 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
@Override
|
@Override
|
||||||
public LoginVO siteActionLogin(LoginVO vo) throws Exception {
|
public LoginVO siteActionLogin(LoginVO vo) throws Exception {
|
||||||
// 1. 입력한 비밀번호를 암호화한다.
|
// 1. 입력한 비밀번호를 암호화한다.
|
||||||
String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
//String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
||||||
|
String enpassword = EgovNewPasswordUtil.hashPassword(vo.getPassword());
|
||||||
vo.setPassword(enpassword);
|
vo.setPassword(enpassword);
|
||||||
|
|
||||||
// 2. 아이디와 암호화된 비밀번호가 DB와 일치하는지 확인한다.
|
// 2. 아이디와 암호화된 비밀번호가 DB와 일치하는지 확인한다.
|
||||||
@ -298,7 +364,8 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
//최고관리자를 제외한 사용자 sso 로그인으로 비밀번호 암호화 삭제(210818, 이준호)
|
||||||
// 1. 입력한 비밀번호를 암호화한다.
|
// 1. 입력한 비밀번호를 암호화한다.
|
||||||
if("USR".equals(vo.getUserSe())) {
|
if("USR".equals(vo.getUserSe())) {
|
||||||
String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
//String enpassword = EgovFileScrty.encryptPassword(vo.getPassword(), vo.getId());
|
||||||
|
String enpassword = EgovNewPasswordUtil.hashPassword(vo.getPassword());
|
||||||
vo.setPassword(enpassword);
|
vo.setPassword(enpassword);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -15,7 +15,7 @@ import kcc.let.uss.umt.service.EgovMberManageService;
|
|||||||
import kcc.let.uss.umt.service.MberManageConfigVO;
|
import kcc.let.uss.umt.service.MberManageConfigVO;
|
||||||
import kcc.let.uss.umt.service.MberManageVO;
|
import kcc.let.uss.umt.service.MberManageVO;
|
||||||
import kcc.let.uss.umt.service.UserDefaultVO;
|
import kcc.let.uss.umt.service.UserDefaultVO;
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 일반회원관리에 관한비지니스클래스를 정의한다.
|
* 일반회원관리에 관한비지니스클래스를 정의한다.
|
||||||
@ -55,7 +55,9 @@ public class EgovMberManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
String uniqId = idgenService.getNextStringId();
|
String uniqId = idgenService.getNextStringId();
|
||||||
mberManageVO.setUniqId(uniqId);
|
mberManageVO.setUniqId(uniqId);
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
//String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
||||||
|
String pass = EgovNewPasswordUtil.hashPassword(mberManageVO.getPassword());
|
||||||
|
|
||||||
mberManageVO.setPassword(pass);
|
mberManageVO.setPassword(pass);
|
||||||
String result = mberManageDAO.insertMber(mberManageVO);
|
String result = mberManageDAO.insertMber(mberManageVO);
|
||||||
|
|
||||||
@ -93,7 +95,9 @@ public class EgovMberManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
@Override
|
@Override
|
||||||
public void updateMber(MberManageVO mberManageVO) throws Exception {
|
public void updateMber(MberManageVO mberManageVO) throws Exception {
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
//String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
||||||
|
String pass = EgovNewPasswordUtil.hashPassword(mberManageVO.getPassword());
|
||||||
|
|
||||||
mberManageVO.setPassword(pass);
|
mberManageVO.setPassword(pass);
|
||||||
mberManageDAO.updateMber(mberManageVO);
|
mberManageDAO.updateMber(mberManageVO);
|
||||||
|
|
||||||
@ -151,7 +155,9 @@ public class EgovMberManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
String uniqId = idgenService.getNextStringId();
|
String uniqId = idgenService.getNextStringId();
|
||||||
mberManageVO.setUniqId(uniqId);
|
mberManageVO.setUniqId(uniqId);
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
//String pass = EgovFileScrty.encryptPassword(mberManageVO.getPassword(), mberManageVO.getMberId());
|
||||||
|
String pass = EgovNewPasswordUtil.hashPassword(mberManageVO.getPassword());
|
||||||
|
|
||||||
mberManageVO.setPassword(pass);
|
mberManageVO.setPassword(pass);
|
||||||
/*AuthorGroup authorGroup = new AuthorGroup();
|
/*AuthorGroup authorGroup = new AuthorGroup();
|
||||||
authorGroup.setUniqId(uniqId);
|
authorGroup.setUniqId(uniqId);
|
||||||
|
|||||||
@ -42,6 +42,10 @@ public class LoginDAO extends EgovAbstractDAO {
|
|||||||
return (LoginVO)select("loginDAO.actionLoginDev", vo);
|
return (LoginVO)select("loginDAO.actionLoginDev", vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public LoginVO actionLoginNew(LoginVO vo) throws Exception {
|
||||||
|
return (LoginVO)select("loginDAO.actionLoginNew", vo);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 등록된 SNS 수량을 조회한다.
|
* 등록된 SNS 수량을 조회한다.
|
||||||
* @param vo LoginVO
|
* @param vo LoginVO
|
||||||
|
|||||||
@ -90,6 +90,8 @@ public interface EgovUserManageService {
|
|||||||
*/
|
*/
|
||||||
public void updatePassword(UserManageVO userManageVO) throws Exception;
|
public void updatePassword(UserManageVO userManageVO) throws Exception;
|
||||||
|
|
||||||
|
public void updatePasswordR(UserManageVO userManageVO) throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
* 사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
||||||
* @param passVO 업무사용자 암호 조회조건정보
|
* @param passVO 업무사용자 암호 조회조건정보
|
||||||
|
|||||||
@ -17,7 +17,7 @@ import kcc.let.uat.uia.service.impl.MberManageDAO;
|
|||||||
import kcc.let.uss.umt.service.EgovUserManageService;
|
import kcc.let.uss.umt.service.EgovUserManageService;
|
||||||
import kcc.let.uss.umt.service.UserDefaultVO;
|
import kcc.let.uss.umt.service.UserDefaultVO;
|
||||||
import kcc.let.uss.umt.service.UserManageVO;
|
import kcc.let.uss.umt.service.UserManageVO;
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 사용자관리에 관한 비지니스 클래스를 정의한다.
|
* 사용자관리에 관한 비지니스 클래스를 정의한다.
|
||||||
@ -127,7 +127,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
){
|
){
|
||||||
//관리자
|
//관리자
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
//pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||||
|
pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||||
userManageVO.setPassword(pass);
|
userManageVO.setPassword(pass);
|
||||||
}else {
|
}else {
|
||||||
//관리자 이외
|
//관리자 이외
|
||||||
@ -217,7 +218,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
@Override
|
@Override
|
||||||
public void updateUser(UserManageVO userManageVO) throws Exception {
|
public void updateUser(UserManageVO userManageVO) throws Exception {
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
//String pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||||
|
String pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||||
userManageVO.setPassword(pass);
|
userManageVO.setPassword(pass);
|
||||||
|
|
||||||
userManageDAO.updateUser(userManageVO);
|
userManageDAO.updateUser(userManageVO);
|
||||||
@ -244,6 +246,11 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
userManageDAO.updatePassword(userManageVO);
|
userManageDAO.updatePassword(userManageVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updatePasswordR(UserManageVO userManageVO) {
|
||||||
|
userManageDAO.updatePasswordR(userManageVO);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
* 사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
||||||
* @param passVO 업무사용자 암호 조회조건정보
|
* @param passVO 업무사용자 암호 조회조건정보
|
||||||
@ -271,7 +278,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
@Override
|
@Override
|
||||||
public void updateUserPWAjax(UserManageVO userManageVO) throws Exception {
|
public void updateUserPWAjax(UserManageVO userManageVO) throws Exception {
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
//String pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||||
|
String pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||||
userManageVO.setPassword(pass);
|
userManageVO.setPassword(pass);
|
||||||
userManageDAO.updateUserPWAjax(userManageVO);
|
userManageDAO.updateUserPWAjax(userManageVO);
|
||||||
}
|
}
|
||||||
@ -348,7 +356,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
|||||||
String pass = "1";
|
String pass = "1";
|
||||||
if("ROLE_ADMIN".equals(userManageVO.getAuthorCode()) || "ROLE_VISIT".equals(userManageVO.getAuthorCode())){
|
if("ROLE_ADMIN".equals(userManageVO.getAuthorCode()) || "ROLE_VISIT".equals(userManageVO.getAuthorCode())){
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
//pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||||
|
pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||||
userManageVO.setPassword(pass);
|
userManageVO.setPassword(pass);
|
||||||
}else {
|
}else {
|
||||||
userManageVO.setPassword(pass);
|
userManageVO.setPassword(pass);
|
||||||
|
|||||||
@ -108,6 +108,10 @@ public class UserManageDAO extends EgovAbstractDAO{
|
|||||||
update("userManageDAO.updatePassword_S", passVO);
|
update("userManageDAO.updatePassword_S", passVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updatePasswordR(UserManageVO passVO) {
|
||||||
|
update("userManageDAO.updatePassword_R", passVO);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 업무사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
* 업무사용자가 비밀번호를 기억하지 못할 때 비밀번호를 찾을 수 있도록 함
|
||||||
* @param userManageVO 업무 사용자암호 조회조건정보
|
* @param userManageVO 업무 사용자암호 조회조건정보
|
||||||
|
|||||||
@ -74,7 +74,7 @@ import kcc.let.uss.umt.service.MberManageVO;
|
|||||||
import kcc.let.uss.umt.service.UserDefaultVO;
|
import kcc.let.uss.umt.service.UserDefaultVO;
|
||||||
import kcc.let.uss.umt.service.UserManageVO;
|
import kcc.let.uss.umt.service.UserManageVO;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
import kcc.let.utl.sim.service.EgovFileScrty;
|
import kcc.let.utl.sim.service.EgovNewPasswordUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 업무사용자관련 요청을 비지니스 클래스로 전달하고 처리된결과를 해당 웹 화면으로 전달하는 Controller를 정의한다
|
* 업무사용자관련 요청을 비지니스 클래스로 전달하고 처리된결과를 해당 웹 화면으로 전달하는 Controller를 정의한다
|
||||||
@ -211,6 +211,17 @@ public class EgovUserManageController {
|
|||||||
userSearchVO.setSearchSortOrd("desc");
|
userSearchVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
List<?> resultList = userManageService.selectUserList(userSearchVO) ;
|
List<?> resultList = userManageService.selectUserList(userSearchVO) ;
|
||||||
|
for (int i=0;i<resultList.size();i++) {
|
||||||
|
EgovMap userManageVO = (EgovMap) resultList.get(i);
|
||||||
|
egovCryptoUtil.decryptUserManageVO4EgovMap(userManageVO);
|
||||||
|
//decryptUserManageVO4EgovMap
|
||||||
|
|
||||||
|
//userManageVO.put("userNm", egovCryptoUtil.decrypt(userManageVO.get("userNm").toString()));
|
||||||
|
//userManageVO.put("emailAdres", egovCryptoUtil.decrypt(userManageVO.get("emailAdres").toString()));
|
||||||
|
//userManageVO.put("offmTelno", egovCryptoUtil.decrypt(userManageVO.get("offmTelno").toString()));
|
||||||
|
|
||||||
|
//resultList.get(i)
|
||||||
|
}
|
||||||
model.addAttribute("resultList", resultList);
|
model.addAttribute("resultList", resultList);
|
||||||
//paginationInfo.setTotalRecordCount( resultList.size()> 0 ? ((Long)((EgovMap)resultList.get(0)).get("totCnt")).intValue() : 0);
|
//paginationInfo.setTotalRecordCount( resultList.size()> 0 ? ((Long)((EgovMap)resultList.get(0)).get("totCnt")).intValue() : 0);
|
||||||
//int i_resultList = resultList.size();
|
//int i_resultList = resultList.size();
|
||||||
@ -543,6 +554,7 @@ public class EgovUserManageController {
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
userManageVO = egovCryptoUtil.encryptUserManageVO(userManageVO);
|
||||||
userManageService.insertUser(userManageVO);
|
userManageService.insertUser(userManageVO);
|
||||||
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
|
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
|
||||||
}catch(Exception e){
|
}catch(Exception e){
|
||||||
@ -608,6 +620,7 @@ public class EgovUserManageController {
|
|||||||
|
|
||||||
UserManageVO userManageVO = new UserManageVO();
|
UserManageVO userManageVO = new UserManageVO();
|
||||||
userManageVO = userManageService.selectUser(uniqId);
|
userManageVO = userManageService.selectUser(uniqId);
|
||||||
|
userManageVO = egovCryptoUtil.decryptUserManageVO(userManageVO);
|
||||||
model.addAttribute("userSearchVO", userSearchVO);
|
model.addAttribute("userSearchVO", userSearchVO);
|
||||||
model.addAttribute("userManageVO", userManageVO);
|
model.addAttribute("userManageVO", userManageVO);
|
||||||
|
|
||||||
@ -902,6 +915,8 @@ public class EgovUserManageController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
userManageService.insertUserHistory(userManageVO);
|
userManageService.insertUserHistory(userManageVO);
|
||||||
|
|
||||||
|
userManageVO = egovCryptoUtil.encryptUserManageVO(userManageVO);
|
||||||
userManageService.updateUser(userManageVO);
|
userManageService.updateUser(userManageVO);
|
||||||
//권한업데이트
|
//권한업데이트
|
||||||
egovAuthorGroupService.updateAuthorGroup(authorGroup);
|
egovAuthorGroupService.updateAuthorGroup(authorGroup);
|
||||||
@ -1177,7 +1192,8 @@ public class EgovUserManageController {
|
|||||||
}*/
|
}*/
|
||||||
|
|
||||||
if (isCorrectPassword) {
|
if (isCorrectPassword) {
|
||||||
userManageVO.setPassword(EgovFileScrty.encryptPassword(newPassword, userManageVO.getEmplyrId()));
|
//userManageVO.setPassword(EgovFileScrty.encryptPassword(newPassword, userManageVO.getEmplyrId()));
|
||||||
|
userManageVO.setPassword(EgovNewPasswordUtil.hashPassword(newPassword)); //입력한 비밀번호 암호화
|
||||||
userManageService.updatePassword(userManageVO);
|
userManageService.updatePassword(userManageVO);
|
||||||
model.addAttribute("userManageVO", userManageVO);
|
model.addAttribute("userManageVO", userManageVO);
|
||||||
resultMsg = "success.common.update";
|
resultMsg = "success.common.update";
|
||||||
@ -1917,7 +1933,9 @@ public class EgovUserManageController {
|
|||||||
}else {
|
}else {
|
||||||
String returnPassword = returnUserManageVO.getPassword() ;
|
String returnPassword = returnUserManageVO.getPassword() ;
|
||||||
//패스워드 암호화
|
//패스워드 암호화
|
||||||
String encryptPass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
//String encryptPass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||||
|
String encryptPass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||||
|
|
||||||
if(returnPassword.equals(encryptPass)) {
|
if(returnPassword.equals(encryptPass)) {
|
||||||
modelAndView.addObject("usedCnt", 1);
|
modelAndView.addObject("usedCnt", 1);
|
||||||
//세션으로 인증넣어줌
|
//세션으로 인증넣어줌
|
||||||
|
|||||||
@ -7,10 +7,12 @@ import javax.annotation.Resource;
|
|||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import egovframework.rte.fdl.cryptography.EgovEnvCryptoService;
|
import egovframework.rte.fdl.cryptography.EgovEnvCryptoService;
|
||||||
import egovframework.rte.fdl.cryptography.EgovPasswordEncoder;
|
import egovframework.rte.fdl.cryptography.EgovPasswordEncoder;
|
||||||
|
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
||||||
import kcc.com.cmm.ComDefaultCodeVO;
|
import kcc.com.cmm.ComDefaultCodeVO;
|
||||||
import kcc.com.cmm.ComDefaultVO;
|
import kcc.com.cmm.ComDefaultVO;
|
||||||
import kcc.com.cmm.service.CmmnDetailCode;
|
import kcc.com.cmm.service.CmmnDetailCode;
|
||||||
@ -19,6 +21,7 @@ import kcc.com.cmm.service.FileVO;
|
|||||||
import kcc.kccadr.sch.service.SchduleManageVO;
|
import kcc.kccadr.sch.service.SchduleManageVO;
|
||||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||||
import kcc.let.uss.umt.service.UserManageVO;
|
import kcc.let.uss.umt.service.UserManageVO;
|
||||||
|
import kcc.let.utl.sim.service.AES256Util;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduSatisfactionExcelVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduSatisfactionExcelVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||||
@ -66,6 +69,9 @@ public class EgovCryptoUtil {
|
|||||||
@Resource(name = "egovEnvPasswordEncoderService")
|
@Resource(name = "egovEnvPasswordEncoderService")
|
||||||
EgovPasswordEncoder egovPasswordEncoder;
|
EgovPasswordEncoder egovPasswordEncoder;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private AES256Util aes256Util;
|
||||||
|
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// VO 별 암/복호화
|
// VO 별 암/복호화
|
||||||
@ -81,6 +87,8 @@ public class EgovCryptoUtil {
|
|||||||
if (!"".equals(p_vEEduAplctVO.getPhone())) p_vEEduAplctVO.setPhone(this.encrypt(p_vEEduAplctVO.getPhone()));
|
if (!"".equals(p_vEEduAplctVO.getPhone())) p_vEEduAplctVO.setPhone(this.encrypt(p_vEEduAplctVO.getPhone()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getEmail())) p_vEEduAplctVO.setEmail(this.encrypt(p_vEEduAplctVO.getEmail()));
|
if (!"".equals(p_vEEduAplctVO.getEmail())) p_vEEduAplctVO.setEmail(this.encrypt(p_vEEduAplctVO.getEmail()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getSearchKeyword()))p_vEEduAplctVO.setInstrNm(this.encrypt(p_vEEduAplctVO.getSearchKeyword()));
|
if (!"".equals(p_vEEduAplctVO.getSearchKeyword()))p_vEEduAplctVO.setInstrNm(this.encrypt(p_vEEduAplctVO.getSearchKeyword()));
|
||||||
|
|
||||||
|
if (!"".equals(p_vEEduAplctVO.getdBirth())) p_vEEduAplctVO.setdBirth(this.encrypt(p_vEEduAplctVO.getdBirth()));
|
||||||
return p_vEEduAplctVO;
|
return p_vEEduAplctVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,9 +99,12 @@ public class EgovCryptoUtil {
|
|||||||
if (!"".equals(p_vEEduAplctVO.getClphone())) p_vEEduAplctVO.setClphone(this.decrypt(p_vEEduAplctVO.getClphone()));
|
if (!"".equals(p_vEEduAplctVO.getClphone())) p_vEEduAplctVO.setClphone(this.decrypt(p_vEEduAplctVO.getClphone()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getPhone())) p_vEEduAplctVO.setPhone(this.decrypt(p_vEEduAplctVO.getPhone()));
|
if (!"".equals(p_vEEduAplctVO.getPhone())) p_vEEduAplctVO.setPhone(this.decrypt(p_vEEduAplctVO.getPhone()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getEmail())) p_vEEduAplctVO.setEmail(this.decrypt(p_vEEduAplctVO.getEmail()));
|
if (!"".equals(p_vEEduAplctVO.getEmail())) p_vEEduAplctVO.setEmail(this.decrypt(p_vEEduAplctVO.getEmail()));
|
||||||
|
|
||||||
if (!"".equals(p_vEEduAplctVO.getInstrNm())) p_vEEduAplctVO.setInstrNm(this.decrypt(p_vEEduAplctVO.getInstrNm()));
|
if (!"".equals(p_vEEduAplctVO.getInstrNm())) p_vEEduAplctVO.setInstrNm(this.decrypt(p_vEEduAplctVO.getInstrNm()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getUserNm())) p_vEEduAplctVO.setUserNm(this.decrypt(p_vEEduAplctVO.getUserNm()));
|
if (!"".equals(p_vEEduAplctVO.getUserNm())) p_vEEduAplctVO.setUserNm(this.decrypt(p_vEEduAplctVO.getUserNm()));
|
||||||
if (!"".equals(p_vEEduAplctVO.getInstrPhone())) p_vEEduAplctVO.setInstrPhone(this.decrypt(p_vEEduAplctVO.getInstrPhone()));
|
if (!"".equals(p_vEEduAplctVO.getInstrPhone())) p_vEEduAplctVO.setInstrPhone(this.decrypt(p_vEEduAplctVO.getInstrPhone()));
|
||||||
|
|
||||||
|
if (!"".equals(p_vEEduAplctVO.getdBirth())) p_vEEduAplctVO.setdBirth(this.decrypt(p_vEEduAplctVO.getdBirth()));
|
||||||
return p_vEEduAplctVO;
|
return p_vEEduAplctVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -132,6 +143,7 @@ public class EgovCryptoUtil {
|
|||||||
|
|
||||||
if (!"".equals(p_vEInstrDetailVO.getInstrNm())) p_vEInstrDetailVO.setInstrNm(this.encrypt(p_vEInstrDetailVO.getInstrNm()));
|
if (!"".equals(p_vEInstrDetailVO.getInstrNm())) p_vEInstrDetailVO.setInstrNm(this.encrypt(p_vEInstrDetailVO.getInstrNm()));
|
||||||
if (!"".equals(p_vEInstrDetailVO.getPhone())) p_vEInstrDetailVO.setPhone(this.encrypt(p_vEInstrDetailVO.getPhone()));
|
if (!"".equals(p_vEInstrDetailVO.getPhone())) p_vEInstrDetailVO.setPhone(this.encrypt(p_vEInstrDetailVO.getPhone()));
|
||||||
|
if (!"".equals(p_vEInstrDetailVO.getEmail())) p_vEInstrDetailVO.setEmail(this.encrypt(p_vEInstrDetailVO.getEmail()));
|
||||||
|
|
||||||
return p_vEInstrDetailVO;
|
return p_vEInstrDetailVO;
|
||||||
}
|
}
|
||||||
@ -141,6 +153,7 @@ public class EgovCryptoUtil {
|
|||||||
|
|
||||||
if (!"".equals(p_vEInstrDetailVO.getInstrNm())) p_vEInstrDetailVO.setInstrNm(this.decrypt(p_vEInstrDetailVO.getInstrNm()));
|
if (!"".equals(p_vEInstrDetailVO.getInstrNm())) p_vEInstrDetailVO.setInstrNm(this.decrypt(p_vEInstrDetailVO.getInstrNm()));
|
||||||
if (!"".equals(p_vEInstrDetailVO.getPhone())) p_vEInstrDetailVO.setPhone(this.decrypt(p_vEInstrDetailVO.getPhone()));
|
if (!"".equals(p_vEInstrDetailVO.getPhone())) p_vEInstrDetailVO.setPhone(this.decrypt(p_vEInstrDetailVO.getPhone()));
|
||||||
|
if (!"".equals(p_vEInstrDetailVO.getEmail())) p_vEInstrDetailVO.setEmail(this.decrypt(p_vEInstrDetailVO.getEmail()));
|
||||||
|
|
||||||
|
|
||||||
return p_vEInstrDetailVO;
|
return p_vEInstrDetailVO;
|
||||||
@ -421,6 +434,9 @@ public class EgovCryptoUtil {
|
|||||||
public UserManageVO encryptUserManageVO(UserManageVO p_userManageVO){
|
public UserManageVO encryptUserManageVO(UserManageVO p_userManageVO){
|
||||||
|
|
||||||
if (!"".equals(p_userManageVO.getEmplyrNm())) p_userManageVO.setEmplyrNm(this.encrypt(p_userManageVO.getEmplyrNm()));
|
if (!"".equals(p_userManageVO.getEmplyrNm())) p_userManageVO.setEmplyrNm(this.encrypt(p_userManageVO.getEmplyrNm()));
|
||||||
|
//if (!"".equals(p_userManageVO.getUserNm())) p_userManageVO.setUserNm(this.encrypt(p_userManageVO.getUserNm()));
|
||||||
|
if (!"".equals(p_userManageVO.getOffmTelno())) p_userManageVO.setOffmTelno(this.encrypt(p_userManageVO.getOffmTelno()));
|
||||||
|
if (!"".equals(p_userManageVO.getEmailAdres())) p_userManageVO.setEmailAdres(this.encrypt(p_userManageVO.getEmailAdres()));
|
||||||
|
|
||||||
return p_userManageVO;
|
return p_userManageVO;
|
||||||
}
|
}
|
||||||
@ -429,6 +445,27 @@ public class EgovCryptoUtil {
|
|||||||
public UserManageVO decryptUserManageVO(UserManageVO p_userManageVO){
|
public UserManageVO decryptUserManageVO(UserManageVO p_userManageVO){
|
||||||
|
|
||||||
if (!"".equals(p_userManageVO.getEmplyrNm())) p_userManageVO.setEmplyrNm(this.decrypt(p_userManageVO.getEmplyrNm()));
|
if (!"".equals(p_userManageVO.getEmplyrNm())) p_userManageVO.setEmplyrNm(this.decrypt(p_userManageVO.getEmplyrNm()));
|
||||||
|
//if (!"".equals(p_userManageVO.getUserNm())) p_userManageVO.setUserNm(this.decrypt(p_userManageVO.getUserNm()));
|
||||||
|
if (!"".equals(p_userManageVO.getOffmTelno())) p_userManageVO.setOffmTelno(this.decrypt(p_userManageVO.getOffmTelno()));
|
||||||
|
if (!"".equals(p_userManageVO.getEmailAdres())) p_userManageVO.setEmailAdres(this.decrypt(p_userManageVO.getEmailAdres()));
|
||||||
|
|
||||||
|
|
||||||
|
return p_userManageVO;
|
||||||
|
}
|
||||||
|
|
||||||
|
//UserManageVO - 복호화 - egovmap으로 받은 경우 처리
|
||||||
|
public EgovMap decryptUserManageVO4EgovMap(EgovMap p_userManageVO){
|
||||||
|
|
||||||
|
//userManageVO.put("userNm", egovCryptoUtil.decrypt(userManageVO.get("userNm").toString()));
|
||||||
|
//userManageVO.put("emailAdres", egovCryptoUtil.decrypt(userManageVO.get("emailAdres").toString()));
|
||||||
|
//userManageVO.put("offmTelno", egovCryptoUtil.decrypt(userManageVO.get("offmTelno").toString()));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (!"".equals(p_userManageVO.get("userNm").toString())) p_userManageVO.put("userNm", this.decrypt(p_userManageVO.get("userNm").toString()));
|
||||||
|
//if (!"".equals(p_userManageVO.getUserNm())) p_userManageVO.setUserNm(this.decrypt(p_userManageVO.getUserNm()));
|
||||||
|
if (!"".equals(p_userManageVO.get("offmTelno").toString())) p_userManageVO.put("offmTelno", this.decrypt(p_userManageVO.get("offmTelno").toString()));
|
||||||
|
if (!"".equals(p_userManageVO.get("emailAdres").toString())) p_userManageVO.put("emailAdres", this.decrypt(p_userManageVO.get("emailAdres").toString()));
|
||||||
|
|
||||||
|
|
||||||
return p_userManageVO;
|
return p_userManageVO;
|
||||||
@ -545,10 +582,14 @@ public class EgovCryptoUtil {
|
|||||||
//CndtnTrgtMngVO - 암호화
|
//CndtnTrgtMngVO - 암호화
|
||||||
// 240108 담당검사 이름 추가
|
// 240108 담당검사 이름 추가
|
||||||
public CndtnTrgtMngVO encryptCndtnTrgtMngVOInfo(CndtnTrgtMngVO p_cndtnTrgtInfoMngVO){
|
public CndtnTrgtMngVO encryptCndtnTrgtMngVOInfo(CndtnTrgtMngVO p_cndtnTrgtInfoMngVO){
|
||||||
|
|
||||||
// if (!"".equals(p_cndtnTrgtInfoMngVO.getTrgtNm()) ) p_cndtnTrgtInfoMngVO.setTrgtNm(this.encrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
// if (!"".equals(p_cndtnTrgtInfoMngVO.getTrgtNm()) ) p_cndtnTrgtInfoMngVO.setTrgtNm(this.encrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
||||||
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getTrgtNm()) ) p_cndtnTrgtInfoMngVO.setTrgtNm(this.encrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getTrgtNm()) ) p_cndtnTrgtInfoMngVO.setTrgtNm(this.encrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
||||||
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getClphone())) p_cndtnTrgtInfoMngVO.setClphone(this.encrypt(p_cndtnTrgtInfoMngVO.getClphone().trim()));
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getClphone())) p_cndtnTrgtInfoMngVO.setClphone(this.encrypt(p_cndtnTrgtInfoMngVO.getClphone().trim()));
|
||||||
|
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getVntNmbr())) p_cndtnTrgtInfoMngVO.setVntNmbr(this.encrypt(p_cndtnTrgtInfoMngVO.getVntNmbr().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getdBirth())) p_cndtnTrgtInfoMngVO.setdBirth(this.encrypt(p_cndtnTrgtInfoMngVO.getdBirth().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getAddr())) p_cndtnTrgtInfoMngVO.setAddr(this.encrypt(p_cndtnTrgtInfoMngVO.getAddr().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getAddrDetail())) p_cndtnTrgtInfoMngVO.setAddrDetail(this.encrypt(p_cndtnTrgtInfoMngVO.getAddrDetail().trim()));
|
||||||
//if (!"".equals(p_cndtnTrgtInfoMngVO.getPrsctrNm())) p_cndtnTrgtInfoMngVO.setPrsctrNm(this.encrypt(p_cndtnTrgtInfoMngVO.getPrsctrNm()));
|
//if (!"".equals(p_cndtnTrgtInfoMngVO.getPrsctrNm())) p_cndtnTrgtInfoMngVO.setPrsctrNm(this.encrypt(p_cndtnTrgtInfoMngVO.getPrsctrNm()));
|
||||||
|
|
||||||
return p_cndtnTrgtInfoMngVO;
|
return p_cndtnTrgtInfoMngVO;
|
||||||
@ -561,6 +602,11 @@ public class EgovCryptoUtil {
|
|||||||
// if (!"".equals(p_cndtnTrgtInfoMngVO.getTrgtNm())) p_cndtnTrgtInfoMngVO.setTrgtNm(this.decrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
// if (!"".equals(p_cndtnTrgtInfoMngVO.getTrgtNm())) p_cndtnTrgtInfoMngVO.setTrgtNm(this.decrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
||||||
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getTrgtNm())) p_cndtnTrgtInfoMngVO.setTrgtNm(this.decrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getTrgtNm())) p_cndtnTrgtInfoMngVO.setTrgtNm(this.decrypt(p_cndtnTrgtInfoMngVO.getTrgtNm().trim()));
|
||||||
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getClphone())) p_cndtnTrgtInfoMngVO.setClphone(this.decrypt(p_cndtnTrgtInfoMngVO.getClphone().trim()));
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getClphone())) p_cndtnTrgtInfoMngVO.setClphone(this.decrypt(p_cndtnTrgtInfoMngVO.getClphone().trim()));
|
||||||
|
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getVntNmbr())) p_cndtnTrgtInfoMngVO.setVntNmbr(this.decrypt(p_cndtnTrgtInfoMngVO.getVntNmbr().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getdBirth())) p_cndtnTrgtInfoMngVO.setdBirth(this.decrypt(p_cndtnTrgtInfoMngVO.getdBirth().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getAddr())) p_cndtnTrgtInfoMngVO.setAddr(this.decrypt(p_cndtnTrgtInfoMngVO.getAddr().trim()));
|
||||||
|
if (StringUtils.isNotEmpty( p_cndtnTrgtInfoMngVO.getAddrDetail())) p_cndtnTrgtInfoMngVO.setAddrDetail(this.decrypt(p_cndtnTrgtInfoMngVO.getAddrDetail().trim()));
|
||||||
//if (!"".equals(p_cndtnTrgtInfoMngVO.getPrsctrNm())) p_cndtnTrgtInfoMngVO.setPrsctrNm(this.decrypt(p_cndtnTrgtInfoMngVO.getPrsctrNm()));
|
//if (!"".equals(p_cndtnTrgtInfoMngVO.getPrsctrNm())) p_cndtnTrgtInfoMngVO.setPrsctrNm(this.decrypt(p_cndtnTrgtInfoMngVO.getPrsctrNm()));
|
||||||
|
|
||||||
return p_cndtnTrgtInfoMngVO;
|
return p_cndtnTrgtInfoMngVO;
|
||||||
@ -618,13 +664,9 @@ public class EgovCryptoUtil {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("enc1-cryptoService.getCyptoAlgorithmKey()");
|
LOGGER.debug("enc1-cryptoService.getCyptoAlgorithmKey()");
|
||||||
//LOGGER.debug(cryptoService.getCyptoAlgorithmKey());
|
//return cryptoService.encryptNone(encrypt); // Does not handle URLEncoding.
|
||||||
//LOGGER.debug(cryptoService.getCyptoAlgorithmKey());
|
|
||||||
//System.out.println("enc1-cryptoService.getCyptoAlgorithmKey()");
|
return aes256Util.encrypt(encrypt); // Does not handle URLEncoding.
|
||||||
//System.out.println(cryptoService.getCyptoAlgorithmKey());
|
|
||||||
//System.out.println(cryptoService.getCyptoAlgorithmKey());
|
|
||||||
//return cryptoService.encrypt(encrypt); // Handles URLEncoding.
|
|
||||||
return cryptoService.encryptNone(encrypt); // Does not handle URLEncoding.
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -648,9 +690,9 @@ public class EgovCryptoUtil {
|
|||||||
//System.out.println("decry2-cryptoService.getCyptoAlgorithmKey()");
|
//System.out.println("decry2-cryptoService.getCyptoAlgorithmKey()");
|
||||||
//System.out.println(cryptoService.getCyptoAlgorithmKey());
|
//System.out.println(cryptoService.getCyptoAlgorithmKey());
|
||||||
|
|
||||||
|
|
||||||
//return cryptoService.decrypt(decrypt); // Handles URLDecoding.
|
//return cryptoService.decrypt(decrypt); // Handles URLDecoding.
|
||||||
return cryptoService.decryptNone(decrypt); // Does not handle URLDecoding.
|
//return cryptoService.decryptNone(decrypt); // Does not handle URLDecoding.
|
||||||
|
return aes256Util.decrypt(decrypt); // Does not handle URLDecoding.
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
72
src/main/java/kcc/let/utl/sim/service/AES256Util.java
Normal file
72
src/main/java/kcc/let/utl/sim/service/AES256Util.java
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
package kcc.let.utl.sim.service;
|
||||||
|
|
||||||
|
import java.util.Base64;
|
||||||
|
|
||||||
|
import javax.crypto.Cipher;
|
||||||
|
import javax.crypto.spec.IvParameterSpec;
|
||||||
|
import javax.crypto.spec.SecretKeySpec;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base64인코딩/디코딩 방식을 이용한 데이터를 암호화/복호화하는 Business Interface class
|
||||||
|
* @author 공통서비스개발팀 박지욱
|
||||||
|
* @since 2009.01.19
|
||||||
|
* @version 1.0
|
||||||
|
* @see
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
* << 개정이력(Modification Information) >>
|
||||||
|
*
|
||||||
|
* 수정일 수정자 수정내용
|
||||||
|
* ------- -------- ---------------------------
|
||||||
|
* 2009.01.19 박지욱 최초 생성
|
||||||
|
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
public class AES256Util {
|
||||||
|
|
||||||
|
private static final String ALGORITHM = "AES/CBC/PKCS5Padding";
|
||||||
|
private static final String CHARSET = "UTF-8";
|
||||||
|
|
||||||
|
// 32바이트(256bit) 키
|
||||||
|
private final String secretKey;
|
||||||
|
|
||||||
|
// 16바이트 IV (고정하면 보안 취약하므로 운영환경에서는 랜덤으로 생성해서 함께 저장 권장)
|
||||||
|
private final String iv;
|
||||||
|
|
||||||
|
public AES256Util(String secretKey, String iv) {
|
||||||
|
if (secretKey.length() != 32 || iv.length() != 16) {
|
||||||
|
throw new IllegalArgumentException("Key must be 32 bytes and IV must be 16 bytes.");
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println("secretKey--------------------------------------------------------------------------------");
|
||||||
|
System.out.println(secretKey);
|
||||||
|
System.out.println(iv);
|
||||||
|
|
||||||
|
this.secretKey = secretKey;
|
||||||
|
this.iv = iv;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 암호화
|
||||||
|
public String encrypt(String plainText) throws Exception {
|
||||||
|
Cipher cipher = Cipher.getInstance(ALGORITHM);
|
||||||
|
SecretKeySpec keySpec = new SecretKeySpec(secretKey.getBytes(CHARSET), "AES");
|
||||||
|
IvParameterSpec ivSpec = new IvParameterSpec(iv.getBytes(CHARSET));
|
||||||
|
|
||||||
|
cipher.init(Cipher.ENCRYPT_MODE, keySpec, ivSpec);
|
||||||
|
byte[] encrypted = cipher.doFinal(plainText.getBytes(CHARSET));
|
||||||
|
return Base64.getEncoder().encodeToString(encrypted);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 복호화
|
||||||
|
public String decrypt(String cipherText) throws Exception {
|
||||||
|
Cipher cipher = Cipher.getInstance(ALGORITHM);
|
||||||
|
SecretKeySpec keySpec = new SecretKeySpec(secretKey.getBytes(CHARSET), "AES");
|
||||||
|
IvParameterSpec ivSpec = new IvParameterSpec(iv.getBytes(CHARSET));
|
||||||
|
|
||||||
|
cipher.init(Cipher.DECRYPT_MODE, keySpec, ivSpec);
|
||||||
|
byte[] decodedBytes = Base64.getDecoder().decode(cipherText);
|
||||||
|
byte[] decrypted = cipher.doFinal(decodedBytes);
|
||||||
|
return new String(decrypted, CHARSET);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,42 @@
|
|||||||
|
package kcc.let.utl.sim.service;
|
||||||
|
|
||||||
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base64인코딩/디코딩 방식을 이용한 데이터를 암호화/복호화하는 Business Interface class
|
||||||
|
* @author 공통서비스개발팀 박지욱
|
||||||
|
* @since 2009.01.19
|
||||||
|
* @version 1.0
|
||||||
|
* @see
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
* << 개정이력(Modification Information) >>
|
||||||
|
*
|
||||||
|
* 수정일 수정자 수정내용
|
||||||
|
* ------- -------- ---------------------------
|
||||||
|
* 2009.01.19 박지욱 최초 생성
|
||||||
|
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
public class EgovNewPasswordUtil {
|
||||||
|
|
||||||
|
//private static final Logger LOGGER = LoggerFactory.getLogger(EgovNewPasswordUtil.class);
|
||||||
|
|
||||||
|
// 파일구분자
|
||||||
|
//static final char FILE_SEPARATOR = File.separatorChar;
|
||||||
|
// 버퍼사이즈
|
||||||
|
//static final int BUFFER_SIZE = 1024;
|
||||||
|
|
||||||
|
private static final BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
|
||||||
|
|
||||||
|
// 비밀번호 해시
|
||||||
|
public static String hashPassword(String rawPassword) {
|
||||||
|
return encoder.encode(rawPassword);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 비밀번호 검증
|
||||||
|
public static boolean matches(String rawPassword, String encodedPassword) {
|
||||||
|
return encoder.matches(rawPassword, encodedPassword);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -13,6 +13,9 @@
|
|||||||
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
||||||
#-----------------------------------------------------------------------
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
crypto.key=A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6
|
||||||
|
crypto.iv=1234567890ABCDEF
|
||||||
|
|
||||||
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
||||||
Globals.OsType = WINDOWS
|
Globals.OsType = WINDOWS
|
||||||
|
|
||||||
|
|||||||
@ -13,6 +13,9 @@
|
|||||||
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
||||||
#-----------------------------------------------------------------------
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
crypto.key=A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6
|
||||||
|
crypto.iv=1234567890ABCDEF
|
||||||
|
|
||||||
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
||||||
Globals.OsType = WINDOWS
|
Globals.OsType = WINDOWS
|
||||||
|
|
||||||
|
|||||||
@ -13,6 +13,9 @@
|
|||||||
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
||||||
#-----------------------------------------------------------------------
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
crypto.key=A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6
|
||||||
|
crypto.iv=1234567890ABCDEF
|
||||||
|
|
||||||
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
||||||
Globals.OsType = WINDOWS
|
Globals.OsType = WINDOWS
|
||||||
|
|
||||||
|
|||||||
@ -13,6 +13,9 @@
|
|||||||
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
||||||
#-----------------------------------------------------------------------
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
crypto.key=A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6
|
||||||
|
crypto.iv=1234567890ABCDEF
|
||||||
|
|
||||||
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
||||||
Globals.OsType = WINDOWS
|
Globals.OsType = WINDOWS
|
||||||
|
|
||||||
|
|||||||
@ -13,6 +13,9 @@
|
|||||||
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
|
||||||
#-----------------------------------------------------------------------
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
crypto.key=A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6
|
||||||
|
crypto.iv=1234567890ABCDEF
|
||||||
|
|
||||||
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
# \uc6b4\uc601\uc11c\ubc84 \ud0c0\uc785(WINDOWS, UNIX)
|
||||||
Globals.OsType = WINDOWS
|
Globals.OsType = WINDOWS
|
||||||
|
|
||||||
|
|||||||
@ -20,13 +20,18 @@
|
|||||||
cryptoPropertyLocation : 설정파일 암복호화 경로 (선택) 기본값은 'classpath:/egovframework/egovProps/globals.properties'
|
cryptoPropertyLocation : 설정파일 암복호화 경로 (선택) 기본값은 'classpath:/egovframework/egovProps/globals.properties'
|
||||||
-->
|
-->
|
||||||
<egov-crypto:config id="egovCryptoConfig"
|
<egov-crypto:config id="egovCryptoConfig"
|
||||||
initial="false"
|
initial="true"
|
||||||
crypto="false"
|
crypto="true"
|
||||||
algorithm="SHA-256"
|
algorithm="AES/CBC/PKCS5Padding"
|
||||||
algorithmKey="egovframe"
|
algorithmKey="0123456789abcdef0123456789abcdef"
|
||||||
algorithmKeyHash="gdyYs/IZqY86VcWhT8emCYfqY1ahw2vtLG+/FzNqtrQ="
|
algorithmKeyHash=""
|
||||||
cryptoBlockSize="1024"
|
cryptoBlockSize="1024"
|
||||||
cryptoPropertyLocation="classpath:/egovframework/egovProps/globals.properties"
|
cryptoPropertyLocation="classpath:/egovframework/egovProps/globals.properties"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<bean id="aes256Util" class="kcc.let.utl.sim.service.AES256Util">
|
||||||
|
<constructor-arg value="${crypto.key}" />
|
||||||
|
<constructor-arg value="${crypto.iv}" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
</beans>
|
</beans>
|
||||||
@ -75,6 +75,49 @@
|
|||||||
</isNotNull>
|
</isNotNull>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 비밀번호비교를 위한 데이터 가져오기 용 -->
|
||||||
|
<select id="loginDAO.actionLoginNew" resultMap="login">
|
||||||
|
/*loginDAO.actionLogin*/
|
||||||
|
<!-- 일반회원 -->
|
||||||
|
<isNotNull property="userSe">
|
||||||
|
<isEqual property="userSe" compareValue="GNR">
|
||||||
|
SELECT mber_id AS id
|
||||||
|
, mber_nm AS name
|
||||||
|
, password AS password
|
||||||
|
, ihidNum AS ihidNum
|
||||||
|
, mber_email_adres AS email
|
||||||
|
, 'GNR' AS userSe
|
||||||
|
, '-' AS orgnztId
|
||||||
|
, ESNTL_ID AS uniqId
|
||||||
|
, 0 AS passMiss
|
||||||
|
, mber_sttus AS emplyrSttusCode
|
||||||
|
, mbtlnum AS membCelnum
|
||||||
|
, birth_day AS membBirth
|
||||||
|
, '' AS userWork
|
||||||
|
FROM lettngnrlmber a
|
||||||
|
WHERE mber_id = #id#
|
||||||
|
</isEqual>
|
||||||
|
<!-- 업무사용자 -->
|
||||||
|
<isEqual property="userSe" compareValue="USR">
|
||||||
|
SELECT EMPLYR_ID AS id
|
||||||
|
, USER_NM AS name
|
||||||
|
, PASSWORD AS password
|
||||||
|
, IHIDNUM AS ihidNum
|
||||||
|
, EMAIL_ADRES AS email
|
||||||
|
, 'USR' AS userSe
|
||||||
|
, ORGNZT_ID AS orgnztId
|
||||||
|
, ESNTL_ID AS uniqId
|
||||||
|
, PASS_MISS AS passMiss
|
||||||
|
, EMPLYR_STTUS_CODE AS emplyrSttusCode
|
||||||
|
, mbtlnum AS membCelnum
|
||||||
|
, '' AS membBirth
|
||||||
|
, user_work AS userWork
|
||||||
|
FROM LETTNEMPLYRINFO a
|
||||||
|
WHERE EMPLYR_ID = #id#
|
||||||
|
</isEqual>
|
||||||
|
</isNotNull>
|
||||||
|
</select>
|
||||||
|
|
||||||
<!-- 개발자 아이디 선택용 -->
|
<!-- 개발자 아이디 선택용 -->
|
||||||
<select id="loginDAO.actionLoginDev" resultMap="login">
|
<select id="loginDAO.actionLoginDev" resultMap="login">
|
||||||
/*loginDAO.actionLoginDev*/
|
/*loginDAO.actionLoginDev*/
|
||||||
|
|||||||
@ -568,6 +568,15 @@
|
|||||||
]]>
|
]]>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<update id="userManageDAO.updatePassword_R">
|
||||||
|
<![CDATA[
|
||||||
|
UPDATE LETTNEMPLYRINFO
|
||||||
|
SET
|
||||||
|
PASSWORD = #password#
|
||||||
|
WHERE EMPLYR_ID = #uniqId#
|
||||||
|
]]>
|
||||||
|
</update>
|
||||||
|
|
||||||
<select id="userManageDAO.selectPassword_S" resultClass="userVO">
|
<select id="userManageDAO.selectPassword_S" resultClass="userVO">
|
||||||
/* userManageDAO.selectPassword_S */
|
/* userManageDAO.selectPassword_S */
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
|
|||||||
@ -249,6 +249,7 @@ function userListExcelDownload(){
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:out value="${result.fxNum}"/>
|
<c:out value="${result.fxNum}"/>
|
||||||
|
<c:out value="${result.emailAdres}"/>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
|
|||||||
@ -200,16 +200,16 @@
|
|||||||
<div class="cont_wrap">
|
<div class="cont_wrap">
|
||||||
<!--tap 추가-->
|
<!--tap 추가-->
|
||||||
<ul class="tab_wrap">
|
<ul class="tab_wrap">
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리</button></li>
|
||||||
<li class="tab active"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">교육확정관리목록</button></li>
|
<li class="tab active"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">확정과정관리</button></li>
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리</button></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<div class="box">
|
<div class="box">
|
||||||
|
|
||||||
<!-- cont_tit -->
|
<!-- cont_tit -->
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>교육확정관리목록</h2>
|
<h2>확정과정관리</h2>
|
||||||
<ul class="cont_nav">
|
<ul class="cont_nav">
|
||||||
<li class="home"><a href="/"><i></i></a></li>
|
<li class="home"><a href="/"><i></i></a></li>
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
@ -212,22 +212,22 @@
|
|||||||
<div class="cont_wrap">
|
<div class="cont_wrap">
|
||||||
<!--tap 추가-->
|
<!--tap 추가-->
|
||||||
<ul class="tab_wrap">
|
<ul class="tab_wrap">
|
||||||
<li class="tab active"><button type="button" >과정신청기간관리목록</button></li>
|
<li class="tab active"><button type="button" >과정신청기간관리</button></li>
|
||||||
<%-- <li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리목록</button></li> --%>
|
<%-- <li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리목록</button></li> --%>
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">교육확정관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">확정과정관리</button></li>
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리</button></li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="box">
|
<div class="box">
|
||||||
|
|
||||||
<!-- cont_tit -->
|
<!-- cont_tit -->
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>과정신청기간관리목록</h2>
|
<h2>과정신청기간관리</h2>
|
||||||
<ul class="cont_nav">
|
<ul class="cont_nav">
|
||||||
<li class="home"><a href="/"><i></i></a></li>
|
<li class="home"><a href="/"><i></i></a></li>
|
||||||
<li>
|
<li>
|
||||||
<p>조건부기소유예관리</p>
|
<p>조건부기소유예관리</p>
|
||||||
</li>
|
</li>
|
||||||
<li><span class="cur_nav">과정신청기간관리목록</span></li>
|
<li><span class="cur_nav">과정신청기간관리</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- //cont_tit -->
|
<!-- //cont_tit -->
|
||||||
|
|||||||
@ -53,6 +53,7 @@
|
|||||||
listForm.pageIndex.value = pageNo ;
|
listForm.pageIndex.value = pageNo ;
|
||||||
listForm.searchKeyword.value = $('#searchKeyword').val();
|
listForm.searchKeyword.value = $('#searchKeyword').val();
|
||||||
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do'/>";
|
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do'/>";
|
||||||
|
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do'/>";
|
||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,22 +177,24 @@
|
|||||||
<!--tap 추가-->
|
<!--tap 추가-->
|
||||||
<ul class="tab_wrap">
|
<ul class="tab_wrap">
|
||||||
<!-- <li class="tab active"><button type="button" >과정신청기간관리목록</button></li> -->
|
<!-- <li class="tab active"><button type="button" >과정신청기간관리목록</button></li> -->
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리목록</button></li>
|
|
||||||
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">교육확정관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngList.do" />'">과정신청기간관리</button></li>
|
||||||
<li class="tab active"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리목록</button></li>
|
<li class="tab"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctCfnMngList.do" />'">확정과정관리</button></li>
|
||||||
|
<li class="tab active"><button type="button" onclick="location.href='<c:url value="/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngList.do" />'">과정관리</button></li>
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<div class="box">
|
<div class="box">
|
||||||
|
|
||||||
<!-- cont_tit -->
|
<!-- cont_tit -->
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>과정관리목록</h2>
|
<h2>과정관리</h2>
|
||||||
<ul class="cont_nav">
|
<ul class="cont_nav">
|
||||||
<li class="home"><a href="/"><i></i></a></li>
|
<li class="home"><a href="/"><i></i></a></li>
|
||||||
<li>
|
<li>
|
||||||
<p>조건부기소유예관리</p>
|
<p>조건부기소유예관리</p>
|
||||||
</li>
|
</li>
|
||||||
<li><span class="cur_nav">과정관리목록</span></li>
|
<li><span class="cur_nav">과정관리</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- //cont_tit -->
|
<!-- //cont_tit -->
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user