Метод IX509ExtensionBasicConstraints::InitializeEncode (certenroll.h)

Метод InitializeEncode инициализирует расширение из логического значения, указывающего, является ли субъект сертификата центром сертификации (ЦС) и целым числом, содержащим глубину подчиненной цепочки ЦС.

Синтаксис

HRESULT InitializeEncode(
  [in] VARIANT_BOOL IsCA,
  [in] LONG         PathLenConstraint
);

Параметры

[in] IsCA

Переменная VARIANT_BOOL , указывающая, является ли субъект сертификата ЦС.

[in] PathLenConstraint

Переменная LONG , содержащая максимальное количество сертификатов в цепочке.

Возвращаемое значение

Если функция выполнена успешно, функция возвращает S_OK.

Если функция завершается ошибкой, она возвращает значение HRESULT , указывающее на ошибку. Возможные значения включают, но не ограничиваются ими в следующей таблице. Список распространенных кодов ошибок см. в разделе "Общие значения HRESULT".

Возврат кода или значения Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Объект уже инициализирован.

Замечания

Метод связывает коллекцию имен с идентификатором объекта XCN_OID_BASIC_CONSTRAINTS2 (2.5.29.19) и кодирует его с помощью различающихся правил кодирования (DER).

Прежде чем использовать объект IX509ExtensionBasicConstraints, необходимо вызвать либо InitializeEncode, либо InitializeDecode. Два метода дополняют друг друга. Метод InitializeEncode позволяет создать объект расширения с кодировкой DER Abstract Syntax Notation One (ASN.1), а метод InitializeDecode позволяет инициализировать необработанные данные из закодированного объекта.

Для этого расширения можно получить следующие свойства:

  • Свойство Critical определяет, является ли расширение критически важным. Вы также можете указать это свойство.
  • Свойство ObjectId извлекает идентификатор OID.
  • Свойство IsCA определяет, может ли субъект сертификата быть центром сертификации.
  • Свойство PathLenConstraint определяет глубину цепочки подчиненных центров сертификации.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
целевая платформа Виндоус
Header certenroll.h
DLL CertEnroll.dll

См. также

IX509ExtensionBasicConstraints