структура CERT_CHAIN_CONTEXT (wincrypt.h)

Структура CERT_CHAIN_CONTEXT содержит массив простых цепочек сертификатов и структуру состояния доверия, которая указывает сводные данные о допустимости для всех подключенных простых цепочек.

Синтаксис

typedef struct _CERT_CHAIN_CONTEXT {
  DWORD                cbSize;
  CERT_TRUST_STATUS    TrustStatus;
  DWORD                cChain;
  PCERT_SIMPLE_CHAIN   *rgpChain;
  DWORD                cLowerQualityChainContext;
  PCCERT_CHAIN_CONTEXT *rgpLowerQualityChainContext;
  BOOL                 fHasRevocationFreshnessTime;
  DWORD                dwRevocationFreshnessTime;
  DWORD                dwCreateFlags;
  GUID                 ChainId;
} CERT_CHAIN_CONTEXT, *PCERT_CHAIN_CONTEXT;

Члены

cbSize

Размер данной структуры (в байтах).

TrustStatus

Структура, показывающая объединенное состояние доверия массива простых цепей. Структура включает код состояния ошибки и код состояния сведений. Сведения о значениях кода состояния см . в разделе CERT_TRUST_STATUS.

cChain

Число простых цепочек в массиве.

rgpChain

Массив указателей на простые структуры цепочки. rgpChain[0] — это простая цепочка конечного сертификата, а rgpChain[cChain–1] — это конечная цепочка. Если конечный сертификат следует считать допустимым, конечная цепочка должна начинаться с сертификата, содержащегося в корневом хранилище, или с доверенным самозаверяющий сертификат. Если исходная цепочка начинается с доверенного сертификата, в массиве будет только одна простая цепочка.

cLowerQualityChainContext

Количество цепочек в массиве rgpLowerQualityChainContext .

rgpLowerQualityChainContext

Массив указателей на структуры CERT_CHAIN_CONTEXT. Возвращается, если CERT_CHAIN_RETURN_LOWER_QUALITY_CONTEXTS задано в dwFlags.

fHasRevocationFreshnessTime

Если доступно значение dwRevocationFreshnessTime, логическое значение имеет значение TRUE.

dwRevocationFreshnessTime

Наибольшее значение CurrentTime (в секундах) за вычетом списка отзыва сертификатов (CRL) ThisUpdate всех элементов, которые были проверены.

dwCreateFlags

ChainId

Комментарии

При построении CERT_CHAIN_CONTEXT первая простая цепочка начинается с конечного сертификата и заканчивается самозаверяющий сертификат. Если этот самозаверяющий сертификат не является корневым или другим доверенным сертификатом, предпринимается попытка создать новую цепочку. CCL используются для создания новой цепочки, начиная с самозаверяющего сертификата из исходной цепочки в качестве конечного сертификата новой цепочки. Этот процесс продолжает создавать дополнительные простые цепочки до тех пор, пока первый самозаверяющий сертификат не станет доверенным сертификатом или пока не не удастся создать дополнительную простую цепочку.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть wincrypt.h

См. также раздел

CERT_SIMPLE_CHAIN

CERT_TRUST_STATUS

CertGetCertificateChain