Это плохая практика использовать стандартное хранилище ключей Java - PullRequest
7 голосов
/ 26 октября 2011

Мы использовали стандартное хранилище ключей java ($JAVA_HOME/jre/lib/security/cacerts) в качестве надежного хранилища для tomcat. И этот сервер Tomcat будет общаться с другим сервером. Недавнее обновление ОС (AIX) явно переписало файл в $JAVA_HOME/jre/lib/security/cacerts, что привело к потере сертификатов и множеству проблем с приложением, размещенным в tomcat.

Глядя на это, является ли плохой практикой ретрансляция на $ JAVA_HOME / jre / lib / security / cacerts? Каковы альтернативные (лучше | стандартные) способы решения этого сценария?

Ответы [ 5 ]

5 голосов
/ 26 октября 2011

Это неплохая практика, если у вас есть процесс сборки, который будет повторять импорт.

2 голосов
/ 26 октября 2011

Не уверен, но, предполагая, что ваши предположения верны, будьте осторожны, где вы положили свое хранилище ключей.Я настоятельно рекомендую поместить его в папку Apache.

По умолчанию в Websphere хранилище ключей работает таким образом, поскольку оно имеет собственную JVM:)

1 голос
/ 18 января 2012

С точки зрения того, что находится в файле cacerts, это не обязательно хуже практики, чем полагаться на сертификаты CA по умолчанию, установленные в вашей ОС или браузере, но это не значит, что это здорово.

У Sun / Oracle есть небольшая «важная заметка» где-то в середине Справочного руководства JSSE об этом :

ВАЖНОЕ ПРИМЕЧАНИЕ: JDK поставляется с ограниченным количеством доверенных корневыхсертификаты в файле / lib / security / cacerts.Как описано в keytool, вы несете ответственность за поддержание (то есть добавление / удаление) сертификатов, содержащихся в этом файле, если вы используете этот файл в качестве хранилища доверенных сертификатов.

В зависимости от конфигурации сертификатов серверов, к которым вы обращаетесьВам может потребоваться добавить дополнительные корневые сертификаты.Получите необходимые конкретные корневые сертификаты от соответствующего поставщика.

С точки зрения конфигурации, для конкретных приложений, где мне пришлось устанавливать «локальные» сертификаты CA, я считаю, что это более стабильно дляиспользовать локальное хранилище доверенных сертификатов (например, указанное с помощью javax.net.ssl.trustStore).

0 голосов
/ 22 февраля 2016

Обновление AIX - это патч.Любой патч не должен удалять / перезаписывать пользовательские данные.Я бы предложил пользователям, пострадавшим от такой потери данных, попросить IBM исправить процедуру исправления.Для сравнения, патч сервера httpd не перезаписывает / не удаляет конфигурацию, даже если он находится в каталоге программы.

0 голосов
/ 29 октября 2011

Да, это плохая практика.

Рекомендуется ограничивать количество доверенных сертификатов настолько, насколько это необходимо.
Таким образом, вы должны были использовать свое собственное хранилище ключей только с сертификатами, которым доверяет ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...