DB접속정보 암호화 중 오류
- 작성자 :
- 이*훈
- 작성일 :
- 2024-11-25 17:59:13
- 조회수 :
- 98
- 구분 :
- 실행환경 / 4.2
- 진행상태 :
- 완료
Q
안녕하세요.
전자정부프레임춰크 DB접속정보 암호화구현하고 있습니다.
해당 문서에 대로 구현하였습니다만,
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte4.2:fdl:crypto
- Crypto algorithmKey, algorithmKeyHash 생성 ==> 정상
테스트는 잘됩니다만, 실행시에 다음과 같이 오류 메시지가 출력됩니다.
Caused by: java.lang.IllegalArgumentException: Prohibited character
* PgConnection.java 로그
- this.queryExecutor = ConnectionFactory.openConnection(hostSpecs, info);
- hostSpecs : jdbc:postgresql://localhost:5432/mydb
- info : {password=ii�r@�T�p���'�, user=my_user}
* globals.properties 내용
- Globals.postgresql.Password=gnHQaFYDMO1Hk5VCZw3wlw%3D%3D
* context-crypto.xml 내용
- <property name="password" value="#{egovEnvCryptoService.getPassword()}" />
PgConnection.java와 globals.properties 의 Password가 서로 다른것 같습니다.
제가 일주일째 삽질하고 있는데, 뭘 빼먹은게 있을까요 ?
감사합니다.
전자정부프레임춰크 DB접속정보 암호화구현하고 있습니다.
해당 문서에 대로 구현하였습니다만,
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte4.2:fdl:crypto
- Crypto algorithmKey, algorithmKeyHash 생성 ==> 정상
테스트는 잘됩니다만, 실행시에 다음과 같이 오류 메시지가 출력됩니다.
Caused by: java.lang.IllegalArgumentException: Prohibited character
* PgConnection.java 로그
- this.queryExecutor = ConnectionFactory.openConnection(hostSpecs, info);
- hostSpecs : jdbc:postgresql://localhost:5432/mydb
- info : {password=ii�r@�T�p���'�, user=my_user}
* globals.properties 내용
- Globals.postgresql.Password=gnHQaFYDMO1Hk5VCZw3wlw%3D%3D
* context-crypto.xml 내용
- <property name="password" value="#{egovEnvCryptoService.getPassword()}" />
PgConnection.java와 globals.properties 의 Password가 서로 다른것 같습니다.
제가 일주일째 삽질하고 있는데, 뭘 빼먹은게 있을까요 ?
감사합니다.
환경정보
-
- OS 정보 :
- 표준프레임워크 버전 : 4.2
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 : postgresql
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크 센터입니다.
Prohibited character 오류는
허용되지 않은 문자를 처리하는 과정에서 발생하는 오류로
암호화 된 PostgreSQL의 패스워드에
"%3D%3D"와 같이 URL 인코딩 처리되어 복호화를 진행하여
의도한 결과와 다른 암호가 적용되는 것으로 보입니다.
EgovEnvCryptoService가 암호화 된 데이터를 복호화 할 때
허용되지 않은 문자를 생성하지 않는지 확인이 필요하며
암호화 된 값이 URL 인코딩되어 넘어가는 경우
복호화 전에 해당 값을 디코딩 처리 후 진행해 보시기 바랍니다.
포탈사이트 공통컴포넌트 샘플코드도 다운로드 받아
참고해 보시기 바랍니다.
https://www.egovframe.go.kr/home/sub.do?menuNo=49
감사합니다.
표준프레임워크 센터입니다.
Prohibited character 오류는
허용되지 않은 문자를 처리하는 과정에서 발생하는 오류로
암호화 된 PostgreSQL의 패스워드에
"%3D%3D"와 같이 URL 인코딩 처리되어 복호화를 진행하여
의도한 결과와 다른 암호가 적용되는 것으로 보입니다.
EgovEnvCryptoService가 암호화 된 데이터를 복호화 할 때
허용되지 않은 문자를 생성하지 않는지 확인이 필요하며
암호화 된 값이 URL 인코딩되어 넘어가는 경우
복호화 전에 해당 값을 디코딩 처리 후 진행해 보시기 바랍니다.
포탈사이트 공통컴포넌트 샘플코드도 다운로드 받아
참고해 보시기 바랍니다.
https://www.egovframe.go.kr/home/sub.do?menuNo=49
감사합니다.