2010-05-05 128 views
0

我們有一個運行在框架2.0中並託管在IIS 6服務器中的Web asp.net應用程序,操作系統是windows server 2003.該Web應用程序正在起訴一個客戶端證書,以通過身份驗證一個Web服務。我們用de用戶「網絡服務」非個性化了應用程序池。IIS 6私鑰證書訪問

問題是我們必須訪問存儲在機器密鑰/存儲器中的證書的私鑰。用戶網絡服務無法訪問密鑰。

我們已經給使用winhttpcertcfg.exe工具的網絡服務用戶授予了權限,但結果是一樣的。

當我們用本地管理員非個人化應用程序池時,結果是成功的。因此我們認爲問題是用戶的權限。

如果有人可以給我們提供一些信息,我們會很感激。

在此先感謝

回答

2

最後我們得到了解決該問題後,許多失敗的結果,但在完成每個問題都有自己的解決方案。

我們的解決方案由爲本地機器創建管理員帳戶組成。之後,我們使用此帳戶登錄並運行MMC/s命令並運行。我們在LOCAL_MACHINE /我的商店中導入證書。

的第二部分是從我們用於與創建的用戶,這是更好在以下URL http://msdn.microsoft.com/en-us/library/ms998297.aspx說明ASP.NET 2.0應用程序創建一個服務帳戶管理員組中刪除該用戶。

祝你好運。

+0

對我來說,只有如果用戶已經登錄服務器,但是錯誤。請參閱:http://stackoverflow.com/questions/3936065/certificates-cannot-find-the-certificate-and-private-key-for-decryption-error-wh – Kiquenet 2010-11-12 16:05:23

+0

@gaizkile救了我幾小時的工作謝謝 – Daveo 2012-01-19 22:11:39

1

對於我來說,只有這個解決方案可以工作(IIS 6,Win 2003 Srv),但有一個問題...... 我的特殊帳戶只能在ASP.NET應用程序之前啓動任何應用程序權利(「作爲...運行」)。如果沒有這個動作,當我嘗試發送帶有證書的http請求(WinHttpRequest)時,就會出現安全錯誤。