代码签名作为构建过程的一部分

Chr*_*uin 5 eclipse-plugin process code-signing

我想了解一些有关代码签名的最佳实践.我们有一个基于Eclipse的应用程序,并认为签署我们的插件是合适的.这提出了很多问题:

  • 私钥可以/应该在源代码管理中吗?

  • 我们是否应该将代码签署为我们每晚构建过程的一部分或作为我们发布过程的一部分?

  • 代码是应该自动签名,还是有理由说这应该是手动步骤?

我倾向于说,"是","每晚"和"自动",但我可以看到只有签署发布产品的论据.我甚至可以证明SQA应该在验证后对代码进行签名,尽管这会使我们的发布过程变得非常糟糕.

其他人如何管理这个?

Mic*_*ael 7

这取决于您希望私钥的安全程度,您可能不希望具有源访问权限的临时员工具有完全访问权限.

在我的工作中,我们执行以下操作:

使用签入密钥将"测试签名"二进制文件作为我们每日构建的一部分.这需要在计算机上使用测试根证书才能信任二进制文件,但如果这些位部署在公司外部,则不会信任它们.

每周(对于外部版本),我们使用真实密钥进行签名.这是通过一个单独的,有点手动的过程完成的.只有少数人可以访问密钥来签署产品.