Метод 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 , представляющий сервер политики регистрации сертификатов (CEP), содержащий шаблон, заданный параметром pTemplate .
[in] pTemplate
Указатель на объект IX509CertificateTemplate , представляющий шаблон, используемый во время инициализации.
Возвращаемое значение
Если функция завершается успешно, функция возвращает S_OK.
Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.
Возвращаемый код/значение | Описание |
---|---|
|
Объект запроса, передаваемый параметру pInnerRequest , должен быть PKCS #10 или запросом CMC. |
|
Параметры pInnerRequest, pPolicyServer и pTemplate не могут иметь значение NULL. |
|
Объект запроса уже инициализирован. |
Комментарии
Указав шаблон, можно добавить сведения во внешний объект запроса, который может не содержаться во внутреннем запросе. Например, если внутренний запрос не содержит необходимых расширений, можно указать шаблон, который делает.
Метод InitializeFromInnerRequestTemplate :
- Создает пустую коллекцию ICryptAttributes .
- Создает пустую коллекцию IX509NameValuePairs .
- Создает пустую коллекцию IX509Extensions .
- Создает коллекцию IObjectIds для критически важных расширений и добавляет идентификаторы объектов XCN_OID_KEY_USAGE и XCN_OID_BASIC_CONSTRAINTS2.
- Создает пустую коллекцию IObjectIds идентификаторов OID для подавления из объекта запроса.
- Создает пустую коллекцию ISignerCertificates .
- Извлекает флаги закрытого ключа из шаблона.
- Задает свойство ArchivePrivateKey , если это требуется для флагов или параметров шаблона.
- Извлекает алгоритм шифрования из шаблона, если он указан, и задает свойство EncryptionAlgorithm .
- По возможности задает свойство EncryptionStrength .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | certenroll.h |