Збірка може завантажити всі свої залежності, а потім під час підписування JAR їй знадобиться ще один мережевий запит. Цей запит надсилається до органу позначок часу через процес jarsigner, який запускає завдання SignJar в Ant.

SignJar надає специфічні для TSA атрибути проксі. У наявній конфігурації підписування відповідна форма така:

<signjar jar="${jar.to.sign}"
         alias="${signing.alias}"
         keystore="${signing.keystore}"
         storepass="${signing.storepass}"
         tsaurl="https://tsa.example/"
         tsaproxyhost="proxy.example"
         tsaproxyport="8080" />

Значення — це заповнювачі для затвердженої конфігурації підписування збірки та TSA. Ant документує tsaproxyhost і tsaproxyport починаючи з версії 1.9.5.

У Ant 1.10.15 SignJar перевіряє схему URL-адреси TSA і перетворює ці атрибути на відповідні властивості проксі HTTP або HTTPS, що передаються jarsigner за допомогою -J-D. Сам хост проксі — це ім'я хоста, а його порт задається окремо. Якщо затверджений TSA загальнодоступний і процесу підписування дозволено використовувати неавтентифікований публічний посередник, запис зі списку HTTP-проксі може заповнити ці два атрибути проксі TSA.

Ця межа дочірнього процесу важлива і в збірці Maven antrun. Конфігурація проксі репозиторію Maven і властивості в JVM, що виконує Ant, не є доказом того, що окремо запущений jarsigner отримав маршрут. Налаштуйте завдання, яке створює цей процес.

Схожі статті