Я настроил приложение Spring Boot для использования HTTPS с сертификатом (не самоподписанным) в хранилище ключей PKCS12.
Я создал хранилище ключей следующим образом:
openssl pkcs12 -export -inkey key -in cert -certfile interm -out tls-keystore.p12 -name tomcat
Свойства конфигурации:
server.ssl.key-store=/etc/app/tls-keystore.p12
server.ssl.key-store-password=password
server.ssl.key-alias=tomcat
Я использую хранилище доверенных сертификатов (другой файл), которое является копией хранилища ключей JVM по умолчанию со вставленными двумя дополнительными сертификатами (поэтому мы можем общаться с локальной службой, которая использует self -подписанные сертификаты).
SSL работает, но в журнале есть ряд предупреждений:
2020-03-12 13:23:14.842 WARN 11572 --- [ main] org.apache.tomcat.util.net.SSLUtilBase : jsseUtil.trustedCertNotValid
Их 30. Не похоже, что они могут соответствовать сертификатам в хранилище ключей, которое я создал, потому что в нем есть только одна запись.
Глядя на код, выясняется, что предупреждение предназначалось для более информативного представления. сообщение, но не удалось: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtilBase.java?revision=1854079&view=markup&pathrev=1854079#l296
Если SSL или альтернативное хранилище доверия отключены, предупреждения не отображаются.
Я включил отладку: -Djavax. net .debug = ssl: рукопожатие: keymanager: trustmanager -D java .security.debug = jca, certpath, поставщик
, в результате чего регистрируется довольно много дополнительной информации, но ее нет рядом с этими предупреждениями.
Что является причиной этих предупреждений и что мне с ними делать?