En build kan ladda ner alla sina beroenden och sedan behöva ytterligare en nätverksförfrågan när en JAR signeras. Den förfrågan går till Tidsstämpelmyndigheten via jarsigner-processen som SignJar-uppgiften i Ant startar.

SignJar tillhandahåller TSA-specifika proxyattribut. Inom en befintlig signeringskonfiguration är den relevanta formen:

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

Värdena är platshållare för buildens godkända signeringsuppsättning och TSA:n. Ant dokumenterar tsaproxyhost och tsaproxyport från version 1.9.5.

I Ant 1.10.15 undersöker SignJar schemat för TSA-URL:en och översätter dessa attribut till motsvarande HTTP- eller HTTPS-proxyegenskaper som skickas till jarsigner med -J-D. Själva proxyvärden är ett värdnamn, och dess port anges separat. Om den godkända TSA:n är offentligt nåbar och signeringsprocessen får använda en oautentiserad offentlig mellanhand, kan en post från en HTTP-proxylista fylla i dessa två TSA-proxyattribut.

Denna gräns för barnprocessen är också viktig i en Maven antrun-build. Mavens proxykonfiguration för arkivet och egenskaperna i JVM:en som kör Ant är inget bevis för att den separat startade jarsignern fick rutten. Konfigurera uppgiften som skapar den processen.

Relaterade artiklar