gpt4 book ai didi

jenkins - 如何在 Jenkins 服务器上使用证书凭据?

转载 作者:行者123 更新时间:2023-12-05 06:41:14 24 4
gpt4 key购买 nike

我已经在 J​​enkins 服务器上创建了 Certificate 类型的凭据。如何使用它来签名文件?
目的是使用 signcode 对 Windows 文件进行签名,并使用 jarsigner 对 jar 文件进行签名。
请注意:凭据是全局的,每个 Jenkins 节点都应该可用。我无权访问 Jenkins 奴隶,我无法手动将证书放入文件系统。

最佳答案

这是对 jar 文件进行签名的方法——我不确定如何配置签名代码。

如果您有 PKCS#12 keystore ,请从 Jenkins Dashboard/Manage Jenkins/Manage credentials/Jenkins/Global credentials/Add credentials 选择 Kind: Certificate 和 Id: my-signing -凭据(例如)。

如果您使用的是声明式 Jenkinsfile,则可以使用 withCredentials .

Jenkins 文件:

pipeline { 
stages {
stage('Build') {
steps {
withCredentials([certificate(
credentialsId: 'my-signing-credentials',
keystoreVariable: 'my.keystore',
aliasVariable: 'my.alias',
passwordVariable: 'my.password')]) {
withMaven {
sh 'mvn deploy'
}
}
}
}
}
}

如果您使用的是 Jenkins Maven 作业,请转至配置/构建环境/使用 secret 文本或文件/绑定(bind)/添加/证书并输入 keystore 变量 (my.keystore)、密码变量 (my.password) 和别名变量 (my.alias),然后从弹出菜单中选择您的签名凭证。

在您的 pom.xml 中引用这些相同的变量:

<project>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>sign</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>${my.keystore}</keystore>
<alias>${my.alias}</alias>
<storepass>${my.password}</storepass>
</configuration>
</plugin>
</plugins>
</build>
</project>

关于jenkins - 如何在 Jenkins 服务器上使用证书凭据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41102650/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com