如何使用基于令牌的证书在 ANT 中对 Jars 进行签名

问题描述 投票:0回答:2

我用于 Jar 签名证书的证书颁发机构 - GlobalSign - 已切换为颁发基于令牌的代码签名证书。这些需要设置 jarsigner 的providerClass 和providerArg 选项。 Ant 的signjar 任务(我已检查Ant 1.10.1 的文档)不支持这些参数。鉴于此,我如何在 Ant 中自动执行此任务?谢谢大家!

java ant code-signing
2个回答
1
投票

我碰巧遇到了同样的问题(也是同一提供商;-) 我不得不求助于使用 Ant 中的任务,如下所示:

<exec executable="${jarsigner}"> 
    <arg line="-keystore ${signkeyNew.keystore} -storetype ${signkeyNew.storetype} -storepass ${signkeyNew.storepass} -providerClass ${signkeyNew.providerClass} -providerArg ${signkeyNew.providerArg} -tsa ${signkey.tsaurl} ${build.bundle-jar} ${signkeyNew.alias}" />
</exec>

(“${xxx}”中提到的别名已被定义为值)


0
投票

以下 ANT 构建脚本可帮助我使用存储在 Azure Key Vault 中的 Entrust 代码签名证书对 jar 进行签名 -

<signjar
    tsaurl="${signjar.tsaurl}"
    jar="${rel.dir}/${images.jar}"              
    storetype="${signjar.storetype}"
    keystore="NONE"
    storepass="&quot;&quot;"                
    alias="${signjar.alias}">

    <arg value="-J-Dazure.keyvault.uri=${azure.keyvault.uri}"/>
    <arg value="-J-Dazure.keyvault.tenant-id=${azure.tenant.id}"/>
    <arg value="-J-Dazure.keyvault.client-id=${azure.service.principal}"/>
    <arg value="-J-Dazure.keyvault.client-secret=${azure.secret}"/> 

</signjar>              
© www.soinside.com 2019 - 2024. All rights reserved.