使用安全性(证书等)自动执行ClickOnce部署,以便客户端在没有任何提示的情况下安装应用程序

时间:2009-11-19 12:13:15

标签: .net security deployment clickonce certificate

我刚刚阅读 Configuring ClickOnce Trusted Publishers 并让它在网络上的另一台计算机上运行。我在网络上部署了应用程序(即\\\abc\something)。

虽然我找不到certmgr.exe作为Windows核心组件的一部分,正如文章所说(..所以你需要使用Windows中包含的证书管理控制台(certmgr.exe)),我发现它位于“C:\ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ bin”。它运作良好,但我错过了什么?我的意思是,如果用户没有安装Visual Studio怎么办?

现在,我必须明确去完成这项工作(即使用certmgr.exe导入证书)在网络上的用户/客户端计算机上。有没有办法自动化它?如果我没有明确地做任何事情,当用户点击网络上已部署的应用程序中的setup.exe\\\abc\something)时,他/她可以安装相同的内容而不会获得基于安全性的提示。

我检查了BOOTSTRAP,但我不能完全理解如何使用它,这里?我想过将证书粘贴到适当的位置(认为使用certmgr.exe导入证书会将其粘贴到磁盘上的某个位置?在某些“个人”目录中?

在gist中,我想自动化用户可以在没有安全/信任提示的情况下从网络(\\\abc\something)安装应用程序的过程。而我作为开发人员需要 不显式在他/她/用户/客户端的计算机中导入证书。

2 个答案:

答案 0 :(得分:1)

CERTMGR是一个MMC管理单元,而不是EXE。将其作为CERTMGR.MSC运行。

或者,您可以使用命令行中的CERTUTIL.EXE,该命令行位于最近版本的Windows上的C:\Windows\System32中。

答案 1 :(得分:1)

  

CERTMGR是一个MMC管理单元,而不是EXE

不,这些实际上是两个(稍微)不同的工具。

在Windows 7 Professional上,certmgr.msc默认安装在System32中。它是纯GUI MMC,无法编写脚本。

certmgr.exe可以在命令行中使用,并随Windows 7 SDK一起提供,必须单独下载和安装。但我想即使没有安装其他SDK工具,.exe也可以在任何Windows 7机器上运行。