Проверяет, что все сертификаты цепочки использовались для подписи выпущенных сертификатов, CRL и CTL в период действия их закрытых ключей.
Синтаксис
HRESULT IsChainValid ( VARIANT Chain, VARIANT_BOOL *pVal );
Function IsChainValid ( _ Chain As Variant _ ) As Boolean
Параметры
- Chain
-
[in] Указатель на объект
CAPICOM.Chain , описанный в библиотеке CAPICOM, либо указатель на структуруCERT_CHAIN_CONTEXT .
Поддерживаемые типы VARIANT для передачиCAPICOM.Chain (только для 32-битной архитектуры):-
VT_DISPATCH, VT_UNKNOWN, VT_DISPATCH | VT_BYREF, VT_UNKNOWN | VT_BYREF,
-
VT_VARIANT | VT_BYREF - если передается указатель на другой VARIANT, то в нём считаются допустимыми все вышеперечисленные типы.
Поддерживаемые типы VARIANT для передачи указателя наCERT_CHAIN_CONTEXT :-
VT_I8, VT_UI8 - для всех платформ,
-
VT_INT, VT_UINT, VT_I4, VT_UI4 - только для 32-битных платформ.
-
- pVal
-
[out, retval] Результат проверки.
Возвращаемое значение
Возвращаемое значение имеет тип HRESULT. Значение S_OK означает успешное выполнение.
Параметры
- Chain
-
Указатель на объект
CAPICOM.Chain , описанный в библиотеке CAPICOM, либо указатель на структуруCERT_CHAIN_CONTEXT .
Поддерживаемые типы VARIANT для передачиCAPICOM.Chain (только для 32-битной архитектуры):-
VT_DISPATCH, VT_UNKNOWN, VT_DISPATCH | VT_BYREF, VT_UNKNOWN | VT_BYREF,
-
VT_VARIANT | VT_BYREF - если передается указатель на другой VARIANT, то в нём считаются допустимыми все вышеперечисленные типы.
Поддерживаемые типы VARIANT для передачи указателя наCERT_CHAIN_CONTEXT :-
VT_I8, VT_UI8 - для всех платформ,
-
VT_INT, VT_UINT, VT_I4, VT_UI4 - только для 32-битных платформ.
-
Возвращаемое значение
Результат проверки.
Примечания
Метод IsChainValidOnTime возвращает результат проверки цепочки.
Во время проверки обходятся все простые цепочки. Для каждого сертификата простой цепочки являющегося сертификатом промежуточного или корневого центра сертификации проверяется, что выпущенный им сертификат подчиненного ЦС или конечного в этой цепочке сертификата, базовый и/или разностный CRL (если указаны) в цепочке были выпущены в период действия закрытого ключа этого сертификата. Для конечных сертификатов простых цепочек (исключая EE) выполняется проверка времени подписи CTL.
Использование закрытого ключа конечного сертификата не контролируется. Для этого предназначены методы IsCertValidNow и IsCertValidOnTime.
Замечание
|
---|
Цепочка содержит CRL только если была построена с указанием флага проверки на отзыв. |
Замечание
|
---|
Существует только 32-битная версия библиотеки CAPICOM. На 64-битных архитектурах данный метод работает только с указателем на структуру |
Требования
Заголовочный файл | pkivalidator.h |
---|---|
Библиотека DLL | pkivalidator.dll |
Идентификаторы GUID | pkivalidator_i.c |
Минимальная версия продукта | 1.0 |