IX509CertificateRequestCmc2::InitializeFromInnerRequestTemplate 方法 (certenroll.h)
InitializeFromInnerRequestTemplate 方法會從內部要求物件和範本初始化憑證要求。
語法
HRESULT InitializeFromInnerRequestTemplate(
[in] IX509CertificateRequest *pInnerRequest,
[in] IX509EnrollmentPolicyServer *pPolicyServer,
[in] IX509CertificateTemplate *pTemplate
);
參數
[in] pInnerRequest
代表內部要求物件的 IX509CertificateRequest 介面指標。 這可以是 PKCS #10 或 CMC 要求。
[in] pPolicyServer
IX509EnrollmentPolicyServer 物件的指標,代表包含 pTemplate 參數所指定範本的憑證註冊原則 (CEP) 伺服器。
[in] pTemplate
IX509CertificateTemplate 物件的指標,代表初始化期間要使用的範本。
傳回值
如果函式成功,函式會傳回 S_OK。
如果函式失敗,它會傳回 指出錯誤的 HRESULT 值。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
傳回碼/值 | Description |
---|---|
|
傳遞至 pInnerRequest 參數的要求對象必須是 PKCS #10 或 CMC 要求。 |
|
pInnerRequest、pPolicyServer 和 pTemplate 參數不能是 NULL。 |
|
要求對象已經初始化。 |
備註
藉由指定範本,您可以將資訊新增至外部要求物件,而該物件可能未包含在內部要求中。 例如,如果內部要求未包含必要的擴充功能,您可以提供可執行的範本。
InitializeFromInnerRequestTemplate 方法:
- 建立空的 ICryptAttributes 集合。
- 建立空的 IX509NameValuePairs 集合。
- 建立空的 IX509Extensions 集合。
- 建立重要延伸模組的 IObjectIds 集合,並新增XCN_OID_KEY_USAGE和XCN_OID_BASIC_CONSTRAINTS2對象標識碼 (OID) 。
- 建立要從要求對象中隱藏之 OID 的空白 IObjectIds 集合。
- 建立空的 ISignerCertificates 集合。
- 從範本擷取私鑰旗標。
- 如果範本旗標或設定需要,請設定 ArchivePrivateKey 屬性。
- 如果指定了加密演算法並設定 EncryptionAlgorithm 屬性,則會從範本擷取加密演算法。
- 盡可能設定 EncryptionStrength 屬性。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |