2011-12-30 59 views
4

當我嘗試簽名文件時,出現「SignTool錯誤:訪問被拒絕」。當我使用管理員cmd時,一切正常。但是,此過程將用於TFS 2010構建過程,並且使用帶有signtool的InvokeProcess任務將與非管理員命令提示符相同的訪問被拒絕消息。TFS 2010構建過程中出現「SignTool錯誤:訪問被拒絕」

更多信息:

以下說明我有以下文件後:

  • MyCA.cer
  • MyCA.pvk
  • MySPC。 cer
  • MySPC.pvk
  • MySPC.pfx

MyCA是我的受信任的根證書頒發機構 我進口MySPC.pfx到個人證書,以下的建議在這裏:SignTool error: Access is denied

爲此我使用的MySPC.pfx的指紋簽署該被導入到個人部分,所以我signtool命令如下:

標誌/ SHA1 1e9d7b5ad98552d9c58944e3f3903e6b929f4819 /噸http://timestamp.verisign.com/scripts/timestamp.dll「文件名」

再次這部作品在管理模式。

標誌/ F「C:\代碼簽名非釋放\ MySPC.pfx」 /噸http://timestamp.verisign.com/scripts/timestamp.dll「文件名」

新的代碼一般簽名,所以任何幫助運行CMD以管理員身份時,這也適用是受歡迎的。

+0

如果構建服務帳戶已經是您的構建箱上的管理員,將關閉UAC工作? – 2012-01-06 00:09:29

回答

0

我有同樣的問題,但TeamCity的。當在管理員的命令行中使用Signtool.exe時,Signtool.exe可以簽署我的.msi文件,但不能從自動構建版本中使用。

在Windows Server 2008,R2,和2012年,計算機存儲的證書實際上是存儲在此文件夾中:

C:\ ProgramData \微軟\加密\ RSA \ MachineKeys的

你需要給運行構建服務器的用戶可以訪問此文件夾。

一旦你這樣做了,再次運行它,你會發現它應該正常工作。

相關問題