У нас есть несколько проектов maven, которые построены на сервере сборки. В некоторых случаях мы хотим подписать наши результаты. Для этого мы используем Maven Jarsigner Plugin .
Мы сталкиваемся со следующими вопросами:
Мы не хотим размещать хранилище ключей где-нибудь на наших серверах и жестко указывать путь к нему. Поэтому мы просто завернули это хранилище ключей в банку и загрузили его как артефакт в наш внутренний репозиторий maven. Когда мы хотим подписать проект maven, мы загружаем артефакт хранилища ключей с помощью подключаемого модуля Maven Dependency и прикрепляем цель подписи к жизненному циклу сборки maven. Здесь - более подробная информация.
Чтобы скрыть пароли для хранилища ключей, мы помещаем их в наш корпоративный файл pom.xml
. Мы также думаем о хранении паролей в settings.xml
на сервере сборки.
Когда проект создается и подписывается на машине разработчика, мы подписываем его самозаверяющим сертификатом. Но когда проект собран и подписан на сервере сборки, мы подписываем его нашим «официальным» сертификатом.
Это хорошая стратегия?