Windows-Server-2008-R2
為服務帳戶安裝通過 MMC 安裝的證書
*(**免責聲明:*我已經在 StackOverflow 上發布了這個問題,但從開發人員的角度來看。我試圖重寫這個問題以適應 ServerFault 條件)
自定義服務必須通過 HTTPS 連接登錄遠端伺服器,因此需要使用 SSL 證書 (Windows 2008 Server SP2)。
我按照Microsoft 的說明使用 MMC 為服務帳戶安裝證書。該證書(自簽名)安裝在受信任的根證書頒發機構證書儲存中。所以我添加了一個證書管理單元,為服務帳戶添加了證書。然後我將控制台文件保存在某個地方,但我不知道它是否有用(我想這些更改會立即生效?)。
證書在系統資料庫中可見(
<ServiceName>
是服務的名稱):HKLM\SOFTWARE\Microsoft\Cryptography\ Services\<ServiceName>\SystemCertificates\Root\Certificates\<digitalFootprint>
但是,該服務找不到證書(假定儲存的類型為 X509)。
在嘗試使用certmgr.msc為使用者安裝證書時,我遇到了類似的問題。我必須以使用者身份登錄,通過Internet Explorer安裝它以使其工作。
我錯過了什麼?
感謝Crypt32在此問題的StackOverflow 版本中的回答,問題是由於 .NET Api 限制:它“不支持在服務帳戶儲存中查找證書。”。