2010-07-22 109 views
1

我們使用signtool.exe簽署了一套管理組件(在命令提示符下運行速度慢,我們在for循環微不足道的.bat文件運行signtool.exe,從應用證書pfx文件)signtool.exe根據不同的用戶帳戶

  • 當在域管理員帳戶下運行時,它在1分鐘內運行。
  • 在本地用戶帳戶下運行時,需要37分鐘!

設置和條件(除了使用的登錄帳戶)在兩種情況下都是相同的。

不用說了,我們構建服務器使用的是「錯誤」的帳戶下運行!

任何人都可以想到的可能,從而影響顯著的signtool.exe速度的任何用戶帳戶設置?它是否需要與任何外部服務進行交互?

回答

2

在靈感momment,我已經解決了這個問題。如果有其他人遇到這種情況,那是因爲我們的代理服務器

管理員帳戶有排除,因此本地地址不會通過代理服務器解析,但構建帳戶沒有排除,所以signtool通過我們的代理進行了不必要的往返(數千英里外),因此非常慢)。

我不知道爲什麼signtool需要簽訂使用帶有時間戳禁用本地PFX文件的本地文件時,但添加本地代理排除固定它ping通互聯網。

+1

因爲signtool需要在網上查詢CRL來驗證簽名證書已被撤銷或不 – 2015-04-03 08:00:25

+0

那會真的檢查導致它會持續多長時間運行?爲什麼域管理員的帳戶不需要執行相同的檢查? – patrickvacek 2015-04-03 13:51:44

+0

patrickvacek:在這種情況下,我認爲這不僅僅是一個緩慢的連接 - 它可能失敗,因爲它沒有將所需的身份驗證細節傳遞給我們的代理服務器。這可能會導致進程鎖定,直到超時,然後推測它會不斷重新嘗試,所以它基本上鎖定了超過半個小時的構建過程,只是等待它從未收到的回覆。管理員帳戶很快,因爲它能夠與證書頒發機構的服務器進行通信。 – 2015-04-04 08:42:40