Когда я пытаюсь опубликовать артефакты от jenkins, если на хосте не установлены сертификаты для артефактов, я получаю сообщение об ошибке:
Error occurred for request GET /artifactory/api/system/version
HTTP/1.1: sun.security.validator.ValidatorException: PKIX path building
failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target.
Есть ли параметр в artifactory, чтобы отключить это? Я хочу иметь возможность подключаться с любого хоста jenkins без добавления сертификатов в хранилище ключей.
@bto, это сертификат, подписанный ЦС. Имеет ли значение, если это самозаверяющий сертификат? Я новичок в этом, так что пока плохо разбираюсь в этой части. Я понимаю, что сообщение приходит с хоста (подчиненного узла), откуда я пытаюсь опубликовать. Какие настройки / конфигурации необходимы на стороне хоста? Моя цель - опубликовать в artifactory с любого подчиненного узла без установки сертификатов. Кстати, все они находятся в сети, которая не подключается к Интернету.
Что ж, вы мог используете простой http вместо https, поскольку это внутренняя сеть. Я настоятельно рекомендую против этого. Это плохая практика безопасности даже в закрытой сети. Как насчет процесса, который реплицирует соответствующие сертификаты на узлы?
@bto, это означает, что при безопасной настройке вам нужно установить cacerts на свой хост (с чем-то вроде соли или тому подобное для ваших хостов) или поместить его в Dockerfile что-то в этом роде, я прав?
Это правильно. Вы также можете настроить задание Jenkins с помощью Плагин Matrix для запуска распространения сертификатов на всех узлах - просто помните, что узлы необходимо перезагрузить, чтобы получить новый файл cacerts! Этот ответ содержит отличные пошаговые инструкции для команд, необходимых для извлечения и внедрения сертификата в файл cacerts.

Чтобы уточнить, это сообщение приходит от клиента (Java-процесс Jenkins на узле), а не от Artifactory. Ваш сервер Artifactory использует самозаверяющий сертификат?