从您的描述看来,您似乎在谈论一个密钥,该密钥不应在SCM存储库中,而需要包含在最终应用程序中。大概应用程序二进制文件本身不能免费下载,否则无论如何都可以将其打开并获取您的密钥,但是如果仅将构建结果部署到某些服务器上就可以了。
在这种情况下,只要密钥在
target目录(即Jenkins工作区)中或在构建构件(例如
lastSuccessfulBuild/artifact/target/myapp.war)中存在,就没有任何问题,只要这些内容不是公共可读的即可。对于CloudBees
DEV @ cloud
Jenkins实例,您可以使用基于角色的访问控制来允许公众查看您项目的变更日志,甚至可以查看构建日志(在审核以确保未打印机密信息之后),但拒绝访问工作空间和工件。
(就工件读取权限而言,似乎将其授予具有总体读取权限的任何人,除非运行Jenkins,
-Dhudson.security.ArtifactsPermission=true而托管Jenkins则不选择这样做。可能需要创建一个启用此权限的插件,并且可能类似于现有的“
扩展读取权限”插件,也具有“删除工作区”权限。工作区浏览权限至少是Jenkins的标准组成部分,如果您不归档工件而是在成功构建结束时直接进行部署,则足够了。
)



