Работа с внешними системами через SSL
Приложение SMP поддерживает работу с внешними сервисами (HTTP, FTP, LDAPs) с использованием протокола Secure Socket Layer (SSL).
Методика использования SSL для подключения к сервису зависит от сертификата для шифрования трафика:
- сертификат сервиса, подписанный доверенным корневым удостоверяющим центром;
- самоподписанный или корпоративный сертификат сервиса.
Подключение к SSL-сервисам, использующим сертификат, подписанный доверенным корневым удостоверяющим центром
Для работы сертификатом сервиса, подписанным доверенным корневым удостоверяющим центром, в точке конфигурации подключения к сервису укажите:
-
использование SSL:
- https (вместо http) — для обращения к HTTPs-сервису из скрипта;
- ldaps (вместо ldap) — для импорта или аутентификации в LDAP).
- соответствующий порт.
Список доверенных центров сертификации составляется компанией Oracle и содержится в Java TrustStore. Команда для просмотра списка:
Для ОС Linux:
/path/to/java/bin/keytool -list -keystore /path/to/java/jre/lib/security/cacerts
Подключение к SSL-сервисам, использующим самоподписанный или корпоративный сертификат
При работе с самоподписанным или корпоративным сертификатом сервиса (например сертификат выпущен во внутрикорпоративной инфраструктуре приватных ключей) виртуальная машина Java в целях безопасности не позволит произвести подключение к сервису и вернет соответствующую ошибку.
Чтобы обойти это поведение, создайте собственное хранилище доверенных сертификатов "Java TrustStore" и поместите в него требуемый сертификат:
- Загрузите на сервер сертификат в нешифрованном (plain-text) формате.
- Скопируйте стандартный truststore $JAVA_HOME/lib/security/cacerts в каталог /conf/ приложения Naumen SMP, переименовав его в naumen.keystore
-
Проимпортируйте сертификат в хранилище командой:
/path/to/naumen/java/bin/keytool -import -alias naumen-ssl -file %certificateName%.cer -keystore /path/to/naumen/conf/naumen.keystore
При этом будет задан вопрос о пароле для хранилища. Стандартный пароль для хранилища cacerts - "changeit".
В опции alias можно задать любое имя сертификата для упрощения его идентификации в хранилище в будущем.
-
Полученный файл naumen.keystore подключите к приложению. Для этого добавить в параметры запуска Tomcat следующие java опции:
-Djavax.net.ssl.trustStore=/path/to/naumen/conf/naumen.keystore
-Djavax.net.ssl.trustStoreType=jks
- Перезапустите сервис Tomcat.