代码签名窗口存储用于侧载的应用程序(使用GoDaddy证书)

You*_*cki 3 code-signing code-signing-certificate windows-8 sideloading

我需要签署我开发的企业Windows应用商店应用,以便用户可以将其加载到他们的设备中.

我正在从GoDaddy获取代码签名证书.很多接下来的步骤对我来说仍然是模糊的 - 任何额外的细节将不胜感激.

到目前为止我做了什么

  • 该应用程序已经过测试,我可以将其部署在具有开发人员许可证的计算机上.
  • 从Daddy购买了代码签名证书,但不知道下一步该做什么(基于过去的经验,我认为我需要在我的开发人员机器上生成密钥对和证书签名请求)
  • 被称为GoDaddy支持的人说我实际上需要一个驱动程序签名证书而不是代码签名证书.成本是相同的,所以他们立即切换我的购买.
  • 事实证明,在Windows上有一个自动生成CSR的过程,但您必须使用Internet Explorer.显然,Internet Explorer和GoDaddy网站以某种方式透明地处理加密内容.我很想知道更多关于那里的实际情况.
  • 作为流程的一部分,您需要提供软件发布者的合法名称和官方地址/电话(在这种情况下我的客户).
  • 一旦您提交请求,就必须得到GoDaddy的批准(GoDaddy应该以某种方式验证我是否获得发布者授权代表其签署代码).

下一步

  • 我认为GoDaddy需要从发布者那里收到一些文件.我很想知道这个过程是如何运作的,需要多长时间.
  • 证书颁发后,我希望再次有一些简单的方法可以在我的开发机器上安装它.问题:有没有办法将密钥和证书移动到另一台机器?
  • 我还希望Visual Studio(我在Windows 8中使用2012 Express版本)能够在创建应用程序包时使用证书.我是否需要为此做一些特殊的设置,或者它是否直截了当("创建应用程序包"向导的一部分)?
  • 我在证书签名请求中提出的一些细节最终将在实际证书上可见(安装应用程序的人员可以看到).哪个?

You*_*cki 7

完成这个过程后,这里有我自己的答案:

  • 事实证明,当建议我使用驾驶员签名证书时,GoDaddy支持代表是错误的.我需要一个代码签名证书.
  • 证书不显示联系人的详细信息(包含在证书签名请求中).您可以在提交请求之前查看证书详细信息(我最初错过了).在我的情况下,显示的详细信息是公司名称,城市,州和国家.
  • 文档要求取决于请求证书的公司(在某些情况下,他们可能根本不需要任何文档).GoDaddy非常友好的支持,所以你应该可以满足他们的要求.这个过程可能需要几天时间才能完成(但他们可以帮助您更快地完成这项工作).
  • 将Internet Explorer用于证书申请阶段和安装阶段时,流程是无缝的.我相信它使用的是Microsoft的证书注册API(在MSDN博客文章中也有描述)
  • 正如JP Alioto所述," 签署应用程序包(Windows应用商店应用) " 文中描述了使用证书的过程.要在特定项目中使用新证书:
    • 打开项目.appxmanifest文件
    • 转到"打包"选项卡
    • 在发布商字段旁边,点击"选择证书"
    • 在弹出的对话框中单击"配置证书",然后选择下拉选项"从证书存储区中挑选..".证书应作为选项之一提供.
  • 要导出证书,可以使用以下过程:
    • 运行certmgr.msc
    • 找到证书
    • 右键单击 > 所有任务 > 导出以启动证书导出向导,该向导具有导出私钥的选项
      • 警告:私钥应该是个人的,你应该保护它.如果你将它复制到你控制的另一台机器上(假设没有人可以在传输过程中抢夺它),这可能没问题.与其他人分享可能会有风险.我无法找到有关Windows如何使用私钥的信息,但让几个人共享私钥可能是一个坏主意.
  • 要从PFX文件导入证书和私钥,请在Windows资源管理器中右键单击该文件,然后选择"安装PFX".这将启动一个直接的"证书导入向导".