Невозможно установить trustStore, trustStorePassword с помощью метода System.setProperty () из .ear, развернутого на Jboss EAP 7.1 - PullRequest
0 голосов
/ 07 августа 2020

Может ли кто-нибудь помочь мне со сценарием ниже?

У меня есть три узла, как показано:

Node1 (внешний интерфейс) ----> Node2 (JMW / Jboss EAP 7.1) -----> Node3 (Другой сервер)

Я хочу сделать зашифрованную (TLS 1.3) связь между Node2 и Node3, поэтому у меня есть доверенный магазин .jks с сертификатом Node3, и я попробовал ниже способы сделать зашифрованную связь:

Есть четыре способа установить эти системные свойства (пароль склада доверенных сертификатов):

  1. Объявив их в переменной среды JAVA_OPTS в Операционная система, которая доступна для всех экземпляров JVM.

  2. Путем объявления -Djavax.net.ssl.trustStore и -Djavax.net.ssl.trustStorePassword с экземпляром JVM, на котором запущен jboss, путем указания их значений при запуске jboss с автономным. sh.

  3. Путем прямого импорта сертификата сервера в $JAVA_HOME/jre/lib/security/cacerts, который доступен для всех экземпляров JVM.

  4. Установив системный параметр для m в веб-приложении, используя System.setProperties().

Я могу использовать сертификат моего сервера и включить шифрованную связь между Node2 ---> Node3, используя указанные выше 1,2 и 3 точки, но все Я хочу использовать точку 4 или я хочу использовать хранилище доверенных сертификатов, имеющее сертификат Node3 с помощью метода System.setProperty ().

Есть ли какие-либо ограничения в jboss EAP 7.1 для 4-й точки, как я мог сделать то же самое и на сервере tomcat 8.0.

Я получаю следующую ошибку при попытке 4-й точки:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
        at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
        at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
        at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
        at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:434)
        ... 127 more}
 
...