媒介
媒介會與用戶端應用程式通訊,以允許他們提交 憑證要求,並 (假設要求會導致發行的憑證) 將簽發的憑證下載至用戶端。 每個傳輸層通訊協定都需要自己的媒介。
Microsoft 憑證服務隨附中繼 (HTTP 的 Web 註冊頁面) 。 媒介的另一個範例是 Microsoft Windows 憑證 MMC 嵌入式管理單元 (,可讓憑證要求精靈) 叫用。 如果要搭配憑證服務使用其他傳輸層通訊協定,開發人員可以為每個所需的傳輸層通訊協定建立媒介。
媒介會使用伺服器引擎所提供的 ICertRequest 和 ICertConfig 介面,與憑證服務通訊。 ICertRequest::Submit方法可用來提交憑證要求,並使用ICertRequest::GetCertificate來取得產生的已發行憑證。 同樣地, ICertConfig::GetConfig 可用來判斷哪些憑證授權單位單位可用來發行憑證。
中繼不是語言相依的。 它可能是以 C++、Visual Basic、JAVA、腳本或其他語言撰寫的程式。
除了從用戶端收集資料以建置憑證要求之外,媒介也可以指定要求屬性。 提交至執行企業原則模組之 憑證授權單位單位 的要求,必須指定要求本身的 「CertificateTemplate」 屬性或憑證範本延伸模組來指出所要求的憑證類型。
請注意,在建立憑證要求期間,開發人員 (和媒介) 負責維護私密金鑰的秘密。 在私密金鑰遭到入侵 (遺失其密碼) 之後,它就無用。
憑證服務 Web 註冊頁面會使用 憑證註冊介面,藉由在工作站上產生私密金鑰來保護私密金鑰。 除了維護私密金鑰的秘密之外,憑證註冊控制還允許媒介指定密碼編譯服務提供者、金鑰規格、金鑰強度和雜湊演算法。
憑證 MMC 嵌入式管理單元也會使用憑證註冊控制 (Xenroll.dll) 。 不過,如果憑證服務 Web 註冊頁面會導致憑證註冊控制資源 (Xenroll.dll) 視需要下載到用戶端,憑證 MMC 嵌入式管理單元會在Xenroll.dll已是可用的資源的環境中執行。
除了 ICertRequest 和 ICertConfig之外,媒介的開發人員可能會發現 憑證註冊介面 和 智慧卡註冊控制項 很有用。