Correzione dei problemi di configurazione di PKIX e SSL in AEM Forms

AEM Forms non riesce a comunicare su SSL a causa di certificati mancanti, configurazione non corretta del keystore o porte SSL non configurate correttamente. Risolvere il problema convalidando le catene di certificati, aggiornando il truststore JVM e correggendo la configurazione SSL in JBoss o WebSphere.

Descrizione description

Ambiente

  • AEM Forms (JEE e OSGi)
  • JBoss
  • WebSphere
  • Adobe Managed Services (AMS)
  • ambienti on-premise

Problema/Sintomi

  • Compilazione del percorso javax.net.ssl.SSLHandshakeException: PKIX non riuscita: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
  • Creazione del percorso java.sql.SQLRecoverableException: IO Error PKIX non riuscita.
  • Chiamata EJB JBoss non riuscita con SSL disabilitato o configurazione incompleta: remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
  • Errore di avvio di AEM in cui la configurazione guidata SSL richiede nome/password del keystore e non può procedere.

Risoluzione resolution

Per risolvere il problema, eseguire la procedura seguente:

  1. Esaminare i registri come standalone/log/server.log o SystemOut.log per identificare le firme di errore SSL come errori PKIX, SSLHandshakeException o password del keystore mancante.

  2. Conferma l’errore fa riferimento a problemi di attendibilità del certificato o di caricamento del keystore.

  3. Estrai il certificato del server e la relativa catena completa, inclusi i certificati del server, intermedi e CA radice, e assicurati che il certificato corrisponda al nome host osservato nei registri.

  4. Importare i certificati mancanti nel truststore JVM in JAVA_HOME/lib/security/cacerts utilizzando lo strumento chiave e verificare l’installazione elencando l’alias. Assicurati di utilizzare il percorso e la password corretti per il keystore.

    keytool -importcert -alias <alias> -file <certfile.pem> -keystore <JAVA_HOME>/lib/security/cacerts

  5. Riavviare JBoss o WebSphere per ricaricare il file TrustStore e verificare che gli errori SSL non vengano più visualizzati durante l’avvio.

  6. Rieseguire l’operazione non riuscita, ad esempio la connessione al database o la chiamata HTTPS.

  7. Se la configurazione SSL guidata richiede input del keystore e la password è sconosciuta, creare un nuovo keystore specificando un nuovo nome di file, una nuova password del keystore e una nuova password della chiave.

  8. Verificare che il file keystore esista nella directory di configurazione.

  9. Convalidare la configurazione del listener JBoss HTTPS in standalone.xml o domain.xml.

  10. Verificare che il listener SSLRealm e HTTPS esistano e vengano caricati correttamente senza errori.

  11. Per gli errori SSL relativi al database, in particolare con SQL Server che utilizza encrypt=true;trustServerCertificate=false, importare il certificato del database nel truststore o impostare temporaneamente trustServerCertificate=true.

  12. Verifica che il test dell’origine dati abbia esito positivo.

  13. Controlla la configurazione SSL EJB se gli errori si riferiscono alla porta 8443.

  14. Verifica che SSL sia abilitato e configurato correttamente per il traffico EJB e che non si verifichino più errori di chiamata.

  15. Eseguire nuovamente il test dell’operazione originale non riuscita e i registri di conferma non contengono SSLHandshakeException o errori correlati.

Se i problemi persistono, eseguire una convalida più approfondita confrontando i certificati utilizzando openssl e verificando le voci del truststore.

Lettura correlata

recommendation-more-help
experience-cloud-kcs-help-kbarticles