Сертификат импортирован в хранилище ключей Java, JVM игнорирует новый сертификат

Я пытаюсь запустить приложение поверх Tomcat 6 для подключения к серверу LDAP через SSL

Я импортировал сертификат сервера в хранилище ключей, используя:

C:\Program Files\Java\jdk1.6.0_32\jre\lib\security>keytool -importcert -trustcacerts -file mycert -alias ca_alias -keystore "c:\Program Files\Java\jdk1.6.0_32\jre\lib\security\cacerts"

Когда я запускаю Tomcat с включенной отладкой SSL, судя по журналам, Tomcat использует правильный файл сертификата:

trustStore is: C:\Program Files\Java\jdk1.6.0_32\jre\lib\security\cacerts

Однако, Tomcat не добавляет сертификат, который я только что импортировал -все остальные сертификаты в файле cacerts печатаются в журнал -и соединение не установлено:

handling exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Перезапуск Tomcat не помогает. С помощью команды keytool -list я проверил, что новый сертификат действительно существует в файле.

Почему Tomcat продолжает игнорировать мой новый сертификат?

РЕДАКТИРОВАТЬ:

Похоже, проблема была вызвана Windows 7 VirtualStore. Keytool создал новую копию файла cacert, а Tomcat использовал исходный файл.

19
задан wattostudios 15 May 2012 в 14:31
поделиться