#. 테스트 환경
WildFly 23.0.2 (JDK8, 11)
JBoss 7.4.*
#. DB 접속 계정 password 노출
데이터소스 생성 시
아래와 같이 DB 접속 게정의 password가 노출되어 보안상 좋지 않다.
#. DB 접속 계정 password 암호화
WildFly / JBoss 자체 기능으로는 password를 암호화 할 수 없다.
별도 스크립트를 통해 암호화한다.
jboss_datasource_encryption.sh
수정해야 할 부분은 맨 위에서부터 두 줄
1. JAVA_HOME : wildfly 혹은 jboss 에서 사용 중인 java 디렉토리 입력 (.../bin 까지) (JAVA SE 8, 11로 테스트 완료)
2. JBOSS_HOME : wildfly 혹은 jboss 의 home 디렉토리 입력
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.15.0.9-2.el7_9.x86_64/bin
JBOSS_HOME=/app/wildfly/wildfly_2302
picketbox=`find ${JBOSS_HOME}/ -type f -name "picketbox*" | sort | head -n 1`
jboss_logging=`find ${JBOSS_HOME}/ -type f -name "jboss-logging*"`
module_name=org.picketbox.datasource.security.SecureIdentityLoginModule
export CLASSPATH=${picketbox}:${jboss_logging}
if [ -d $JAVA_HOME ]; then
read -p "Input Database Password : " dbpassword
${JAVA_HOME}/java -cp ${CLASSPATH} ${module_name} ${dbpassword}
else
echo "JAVA 1.8 is not installed. Please install and try again."
fi
jboss_datasource_encryption.sh 스크립트를 실행한다
password를 입력하면 암호화 된 패스워드가 생성된다
domain.xml 에서 수정 대상 데이터소스의 password 태그의 기존 값을
Encoded password 의 값으로 대체한다.
(수정 전)
(수정 이후)
#. Managed Console 에서 확인
데이터소스 메뉴로 이동하여 암호화 된 password 값을 확인한다.
DB Connection도 정상적으로 맺어지는지 확인.
'WAS - JBoss,WildFly > 각종 설정' 카테고리의 다른 글
[JBoss_WildFly] 데이터소스 - DB 접속 계정 password 암호화 (JBoss7.4.7버전) (0) | 2022.12.21 |
---|---|
[wildfly/JBoss] Full 프로파일에서 ajp 포트 enable 하는 방법 (0) | 2022.11.03 |
[WildFly/JBoss] 데이터소스 DB 접속 계정 password 암호화 (WildFly26) (0) | 2022.09.23 |
[WildFly_JBoss] 데이터소스 - Connection Valid 설정 (0) | 2022.09.14 |
[WildFly_JBoss] 데이터소스 - JDBC Driver 등록 & 데이터소스 생성 (0) | 2022.09.14 |