Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Метод InitializeFromPublicKey инициализирует запрос сертификата со знаком NULL с помощью объекта IX509PublicKey и, при необходимости, шаблона.
Синтаксис
HRESULT InitializeFromPublicKey(
[in] X509CertificateEnrollmentContext Context,
[in] IX509PublicKey *pPublicKey,
[in, optional] BSTR strTemplateName
);
Параметры
[in] Context
Значение перечисления X509CertificateEnrollmentContext , указывающее, предназначен ли запрошенный сертификат для конечного пользователя, компьютера или администратора, действующего от имени компьютера.
[in] pPublicKey
Указатель на интерфейс IX509PublicKey , представляющий открытый ключ.
[in, optional] strTemplateName
Переменная BSTR , содержащая общее имя шаблона (CN), как она отображается в Active Directory или идентификаторе точечного десятичного объекта. Этот параметр является необязательным.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает S_OK.
Если функция завершается ошибкой, она возвращает значение HRESULT , указывающее на ошибку. Возможные значения включают, но не ограничиваются ими в следующей таблице. Список распространенных кодов ошибок см. в разделе "Общие значения HRESULT".
| Возврат кода или значения | Description |
|---|---|
|
Объект запроса сертификата уже инициализирован. |
Замечания
Если указать шаблон, метод InitializeFromPublicKey выполняет следующие действия:
- Добавляет расширения, указанные в необязательном шаблоне( если таковые есть), в коллекцию IX509Extensions .
- Создает коллекцию CriticalExtensions и заполняет ее идентификаторами объектов по умолчанию XCN_OID_KEY_USAGE и XCN_OID_BASIC_CONSTRAINTS2. Если шаблон указан и указывает, что эти OID не являются критически важными, они удаляются из коллекции. Добавлены идентификаторы OID, помеченные шаблоном( если таковые имеются).
- Задает свойство SmimeCapabilities , если шаблон поддерживает симметричные алгоритмы.
- Задает свойство AlternateSignatureAlgorithm , если шаблону требуется дискретный алгоритм подписи OID.
- Создает объект IX509SignatureInformation .
- Создает OID хэш-алгоритма, если алгоритм указан в шаблоне и задает его в объекте IX509SignatureInformation .
- Создает OID асимметричного алгоритма шифрования, если алгоритм указан в шаблоне и задает его в объекте IX509SignatureInformation .
Указываете ли шаблон или нет, если свойство CSPInformations не указано, метод создает коллекцию ICspInformations от поставщиков, установленных на компьютере.
Метод не создает закрытый ключ. Использование этого метода подразумевает, что запрос имеет значение NULL-подписи. Поэтому метод задает свойство NullSigned в объекте IX509SignatureInformation .
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows Vista [только классические приложения] |
| минимальный поддерживаемый сервер | Windows Server 2008 [только классические приложения] |
| целевая платформа | Виндоус |
| Header | certenroll.h |
| DLL | CertEnroll.dll |