2011-02-03 31 views
2

Windows MMC證書管理單元允許管理員使用「服務帳戶」,但這些證書如何由服務訪問?MMC證書在哪裏管理「服務帳戶」的導入證書?

如果我使用「服務帳戶」作爲管理員導入到個人,並且作爲標準用戶運行的服務使用System.Security.Cryptography.X509Certificates.X509Store在StoreLocation.CurrentUser(或StoreLocation.LocalMachine)中查找,它確實找不到證書。

如果我登錄爲服務帳戶並從該標準用戶帳戶將證書導入到個人,那麼該證書是由該服務找到的。

管理單元將「服務帳戶」證書放在哪裏以及服務如何使用.NET類找到它?

回答

1

證書存儲在HKLM的註冊表中。例如,如果服務名稱爲MYSERVICE那麼個人存儲證書的位置:

HKEY_LOCAL_MACHINE \ SOFTWARE \微軟\加密\ SERVICES \ MYSERVICE \ SystemCertificates \我\證書]

此MSDN頁面有更多的細節: System Store Locations

我看不到私鑰在哪裏 - 也許在blob數據中。要從.NET訪問此商店,我必須進行P/Invoke(參見here)。

我不打算使用「服務帳戶」,所以我沒有進一步尋找。

0

呃。我從不使用服務帳戶。在安裝要由IIS使用的SSL時,我總是使用計算機帳戶。你確定你需要使用服務帳戶嗎?如果是這樣,你可能應該問服務器故障(http://serverfault.com/)的專業人士。