直接在构建服务器上安装 Authenticode 代码签名证书以创建生产签名构建是否可以接受?我正在网上寻找一些资源,这些资源建议或支持这种做法是合法的,前提是您已采取适当的步骤来保护构建服务器以及创建和部署构建的过程。
我能找到的关于代码签名实践的所有“最佳实践”指南在建议的过程方面都远远超过了顶部。Microsoft 的参考文档有多达 6 个服务器在使用,用于签署单个程序集的简单操作。 http://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/best_practices.doc
一些背景:
我的公司为其员工和直接客户创建了简单的富客户端业务线应用程序。我们不创建商业软件。我的构建服务器使用我的公司严格的安全策略和程序进行物理安全和网络安全。只有组织中非常具体的人才能在我的环境中开始构建。
我们当前的流程要求我将构建/部署流程分解为多个阶段,并配备大量手动流程。我们使用物理设备来存储 Authenticode 证书,需要用户输入 PIN 才能访问。我们必须将需要代码签名的程序集/清单改组到指定的代码签名 PC,这些 PC 也必须受到物理保护。
对我来说,传递物理令牌/设备并保留所有这些手动步骤是不太安全的。没有什么可以阻止对令牌/设备具有物理访问权限的人签署他们想要的任何东西。至少,通过自动化、记录、受控的构建服务器环境,您知道签名的内容和签名者。