2016-11-16 112 views

回答

1

我建議你使用IIS Local而不是Express來安全地進行更多的控制。我希望您能通過以下步驟獲得成功:

  1. 將證書安裝到當前用戶的個人目錄中。 (Help
  2. 將專用應用程序池分配給IdSrv3虛擬應用程序或網站。 (Help
  3. 將您的用戶指定爲專用應用程序池的標識。 (Help

運行IIS的用戶必須對放置它的證書存儲具有讀取權限。 ApplicationPoolIdentity沒有這個權限。

0

好的。讓我們專注於解決方案。

首先,我從代碼中添加了證書到用戶密鑰集,而不是機器密鑰文件夾。

var certificate = new X509Certificate2(objApiCertficate.CertificateData,this.strApiPassword,X509KeyStorageFlags.UserKeySet); certHandler.ClientCertificates.Add(certificate);

然後,您必須在應用程序池中加載用戶配置文件。 請在測試之前重新啓動IIS。

我上傳了一些截圖在我的博客上。

https://guntucomputerhacks.blogspot.com.au/2017/08/systemsecuritycryptographycryptographic.html