为Sideloading签名的应用程序

时间:2012-11-22 13:13:29

标签: windows-8 visual-studio-2012 microsoft-metro digital-certificate sideloading

我想澄清一个关于Windows 8的Sideloading应用程序的问题(在公司内部使用。)阅读一些关于它的文章,总是在部署之前编写应用程序必须加密签名(http://technet.microsoft.com/en-us/library/hh852635.aspx)。我找到了如何签署我的应用程序(http://msdn.microsoft.com/ru-RU/library/hh446592%28v=vs.85%29.aspx),但是有一个问题是从哪里获取签名应用程序的密钥。它可以从Verisign,Comodo或另一个购买?如果是这样,需要花多少时间?我是否正确理解签名应用程序不需要App Packager,因为应用程序包生成了Visual Studio,之后您必须使用CertMgr将证书安装到域并使用SignTool签署此证书应用程序?如果我错了 - 请纠正我,请

谢谢。

2 个答案:

答案 0 :(得分:2)

您应该可以使用Active Directory Certificate Services生成证书。

Here是关于如何从AD CS生成证书的快速演练

Active Directory Certificate Services Step-by-Step Guide

答案 1 :(得分:1)

如果您在不访问AD CS的情况下执行此操作,则可以从提供RFC3161时间戳服务的任何证书颁发机构购买代码签名证书。获取代码签名证书所需的时间取决于证书颁发机构验证您是您所声称的人所需的时间。

但是,您需要手动为appx文件添加时间戳,因为VS2013在生成appx文件时不支持使用第三方CA的时间戳服务。您需要为appx加时间戳,否则软件将使您的代码签名证书到期的日期到期。

这就是我使用signtool的方式:

signtool sign /fd SHA256 /a /f YourCertKey.pfx /p mypassword /tr http://timestampserver.yourca.com/somepath YourApp.appx

以下是有关使用signtool签署应用包的更多信息:http://msdn.microsoft.com/en-us/library/windows/desktop/jj835835(v=vs.85).aspx

如果您尝试侧载这些appx文件,则可能还需要在相关计算机上启用sideload权限。如果您未在客户端计算机上使用加入域的Windows Enterprise,则可能涉及从Microsoft批量许可或合作伙伴处购买侧面加载许可证。

以下是有关侧载的更多信息:http://technet.microsoft.com/en-ca/windows/jj874388.aspx