外部屬性函式

屬性可用來將值與憑證產生關聯。 屬性永遠不會傳送至 憑證授權單位單位 (CA) ,也不會儲存在憑證內。 一般而言,它們會在從 CA 收到憑證之後,以及儲存在存放區之前,與憑證相關聯。 屬性會連同憑證一起儲存在存放區中。 CertEnroll.dll實作 ICertProperty 介面和下列衍生自 ICertProperty的介面:

下列各節會識別Xenroll.dll匯出的函式來管理外部憑證屬性。 每個章節也會討論如何使用 CertEnroll.dll 來取代 函式,或指出兩個程式庫之間沒有任何對應存在:

addBlobPropertyToCertificateWStr

Xenroll.dll中的 addBlobPropertyToCertificateWStr 函式會將屬性新增至憑證。

在CertEnroll.dll中,所有衍生自 ICertProperty 的物件都會實作 SetValueOnCertificate 方法,讓您可用來將屬性與憑證產生關聯。 此外, IX509Enrollment 物件會直接實作 CertificateFriendlyNameCertificateDescription 屬性。

GetPrivateKeyArchiveCertificate

Xenroll.dll中的 GetPrivateKeyArchiveCertificate 函式會擷取用來封存 私密金鑰的交換憑證。

您可以使用 CertEnroll.dll 中的 IX509CertificateRequestCmc 物件來建立 CA 封存私密金鑰的要求。 您必須從 CA 擷取交換憑證,並使用該憑證中包含的 公開金鑰 來加密您提交以進行封存的私密金鑰。 若要指定或擷取 CA 交換憑證,請在該物件上呼叫 KeyArchivalCertificate 屬性。

resetBlobProperties

Xenroll.dll中的 resetBlobProperties 函式會從憑證中移除屬性集合。

在CertEnroll.dll中,衍生自 ICertProperty 的所有屬性物件都會實作 RemoveFromCertificate 屬性,讓您可用來解除與憑證的屬性關聯。

SetPrivateKeyArchiveCertificate

Xenroll.dll中的 SetPrivateKeyArchiveCertificate 函式會指定用來封存私密金鑰的交換憑證。

您可以使用 CertEnroll.dll 中的 IX509CertificateRequestCmc 物件來建立 CA 封存私密金鑰的要求。 您必須從 CA 擷取交換憑證,並使用該憑證中包含的公開金鑰來加密您提交以進行封存的私密金鑰。 若要指定或擷取 CA 交換憑證,請在該物件上呼叫 KeyArchivalCertificate 屬性。

SetSignerCertificate

Xenroll.dll 指定簽署者憑證中的 SetSignerCertificate 函式。

CertEnroll.dll中的 ISignerCertificate 物件可用來簽署 PKCS #7、CMC 或自我簽署 憑證要求。 您可以使用現有的簽署憑證來初始化 物件,並藉由呼叫下列其中一個屬性,將它與要求產生關聯:

此外,如果您從內部要求和範本初始化 CMC 要求,或從現有要求初始化 PKCS #7 要求,則可以設定簽署憑證。

ThumbPrintWStr

Xenroll.dll中的 ThumbPrintWStr 函式會指定或擷取憑證雜湊的值。

在CertEnroll.dll中,您可以使用ICertPropertySHA1Hash物件來擷取藉由呼叫InitializeFromCertificate方法所建立) 指紋 (雜湊值。

將Xenroll.dll對應至CertEnroll.dll