Ant SignJar: დროის ნიშნის მოთხოვნების პროქსის გავლით მარშრუტიზაცია
კონფიგურირეთ პროქსი, რომელსაც Ant SignJar-ის დროის ნიშნის მოთხოვნა იყენებს, იმის ნაცვლად, რომ ივარაუდოთ build-ის გამშვების პარამეტრების jarsigner-ამდე მიღწევა.
build-ს შეუძლია ჩამოტვირთოს ყველა დამოკიდებულება და შემდეგ JAR-ის ხელმოწერის დროს კიდევ ერთი ქსელური მოთხოვნა დასჭირდეს. ეს მოთხოვნა დროის ნიშნის ორგანოსკენ მიდის jarsigner-ის პროცესის გავლით, რომელსაც Ant-ის SignJar ამოცანა იწყებს.
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" />
მნიშვნელობები build-ის დამტკიცებული ხელმოწერის კონფიგურაციისა და TSA-ს ჩანაცვლებითი ნიშნებია. Ant ადასტურებს tsaproxyhost-სა და tsaproxyport-ს 1.9.5 ვერსიიდან დაწყებული.
Ant 1.10.15-ში SignJar ამოწმებს TSA URL-ის სქემას და ამ ატრიბუტებს გარდაქმნის შესაბამის HTTP ან HTTPS პროქსის თვისებებად, რომლებიც -J-D-ით jarsigner-ს გადაეცემა. პროქსის ჰოსტი თავად ჰოსტის სახელია, ხოლო მისი პორტი ცალკე მიეწოდება. თუ დამტკიცებული TSA საჯაროდ ხელმისაწვდომია და ხელმოწერის პროცესს უფლება აქვს გამოიყენოს არაავთენტიფიცირებული საჯარო შუამავალი, HTTP პროქსების სიის ჩანაწერს შეუძლია შეავსოს ეს ორი TSA პროქსის ატრიბუტი.
შვილობილი პროცესის ეს საზღვარი Maven antrun build-შიც მნიშვნელოვანია. Maven-ის რეპოზიტორის პროქსის კონფიგურაცია და Ant-ის გამტარებელ JVM-ში არსებული თვისებები არ არის მტკიცებულება, რომ ცალკე გაშვებულმა jarsigner-მა მარშრუტი მიიღო. კონფიგურირეთ ის ამოცანა, რომელიც ამ პროცესს ქმნის.