JBoss(AEM Forms JEE)에서 AEM Forms 데이터베이스 암호 업데이트 및 암호화
AEM Forms on JEE는 JBoss 데이터 소스 구성 파일(예: lc_oracle.xml 또는 lc_turnkey.xml)에 데이터베이스 자격 증명을 저장하므로 데이터베이스 암호가 변경되거나 암호화가 필요한 경우 AEM Forms에서 데이터 소스를 인증할 수 없고 연결 오류가 발생합니다. LCM(구성 관리자) 실행 중 또는 JBoss 시작 시 일반적으로 데이터베이스 회전, 자격 증명 변경 또는 일반 텍스트에서 암호화된 암호로의 변환 후 오류가 발생합니다. JBoss/EAP 버전과 일치하는 방법을 사용하여 암호화된 암호를 재생성하고 데이터 소스 구성 파일을 업데이트하면 연결이 복원됩니다.
설명 description
환경:
- JEE의 AEM Forms
- Adobe Experience Manager 온-프레미스 소프트웨어
- JBoss EAP 7.x(PicketBox 암호화)
- JBoss EAP 8(Elytron 자격 증명 저장소)
문제/증상:
- LCM이 ALC-LCM-110-030 코드로 데이터 소스를 구성하지 못했습니다 오류를 보고합니다.
- JBoss 또는 AEM 시작이 실패하고 사용자에 대한 액세스가 거부되었습니다(암호 사용: YES)와(과) 같은 데이터베이스 오류가 발생합니다.
근본 원인:
AEM Forms은 JBoss 정의 데이터 소스를 사용합니다. 구성된(및 종종 암호화된) 암호가 실제 데이터베이스 사용자 암호와 일치하지 않으면 데이터 소스 인증이 실패합니다. 이 문제는 lc_oracle.xml 또는 lc_turnkey.xml을(를) 업데이트하지 않고 데이터베이스 암호를 회전하거나, 변경 후 암호화된 암호를 다시 생성하지 않거나, 환경에서 레거시 PicketBox 암호화와 Elytron 자격 증명 저장소 항목을 혼합할 때 발생합니다.
확인하는 방법
- 설치에서 사용하는 암호 메커니즘을 식별합니다.
lc_turnkey.xml또는lc_oracle.xml을(를) 열고 암호 필드를 확인합니다.{MASK-...}(으)로 시작하는 암호는 PicketBox를 나타내고 자격 증명 저장소 참조를 사용하는 암호 식은 Elytron을 나타냅니다. - 암호화 유형이 JBoss/EAP 버전과 일치하는지 확인합니다. PicketBox는 EAP 7.x 설치에 일반적으로 사용됩니다. Elytron 자격 증명 저장소는 EAP 7.4에 대해 선택 사항이며 EAP 8에는 필수입니다.
해결 방법 resolution
-
수정하기 전에 현재 구성 파일을 백업합니다.
jboss/standalone/configuration/lc_turnkey.xml또는lc_oracle.xml을(를) 복사하고 백업 타임스탬프를 확인합니다. 백업 없이 진행하지 마십시오. -
EAP 7.x용 PicketBox 메서드를 사용하여 새 데이터베이스 암호를 암호화합니다. 아래 암호화 명령을 실행하고 메시지가 표시되면 새 데이터베이스 암호를 입력합니다. 이 명령은 암호화되고 마스킹된 값을 인쇄합니다.
code language-none java -cp modules/system/layers/base/org/jboss/logging/main/jboss-logging-3.4.1.Final-redhat-00001.jar;modules/system/layers/base/org/picketbox/main/picketbox-5.0.3.Final-redhat-00007.jar;modules/system/layers/base/org/picketbox/main/picketbox-commons-1.0.0.final-redhat-5.jar;modules/system/layers/base/org/picketbox/main/picketbox-infinispan-5.0.3.Final-redhat-00007.jar org.picketbox.datasource.security.SecureIdentityLoginModule명령이 실패하면 Java 경로와 모듈 경로가 환경에 표시된 대로 정확하게 존재하는지 확인합니다.
-
lc_turnkey.xml또는lc_oracle.xml에서 암호화된 암호를 업데이트하십시오.<password>태그 내의 기존 암호화된 값을 새로운 암호화된 값으로 바꾸고 XML 구문 오류가 없는지 확인합니다. 파일이 유효하지 않은 경우 백업에서 복원하고 다시 시도하십시오. -
AEM Forms을 호스팅하는 애플리케이션 서버를 다시 시작합니다. 데이터 원본 초기화에 대해
server.log을(를) 검토하십시오. 그래도 서버가 실패하면 로그에서 SQL 인증 오류를 확인하고 실제 데이터베이스 암호를 다시 확인합니다. -
(선택 사항) PicketBox 대신 Elytron을 선택하는 경우 Elytron 자격 증명 저장소를 구성합니다. Experience League Elytron 자격 증명 저장소 안내서에 따라 Elytron 지원 항목으로 JBoss 부트를 확인합니다. 저장소가 로드되지 않으면 EAP 7.x 설치 시 지원되는 PicketBox로 되돌립니다.
유효성 검사
- AEM 시작 확인: 로그인 화면이 로드되지만 사용자 이름과 암호가 일치하지 않습니다 오류가 발생했습니다.
- 데이터 원본 연결 확인:
server.log에 SQL 인증 예외가 나타나지 않습니다.