Condividi tramite


struttura CERT_CHAIN_CONTEXT (wincrypt.h)

La struttura CERT_CHAIN_CONTEXT contiene una matrice di catene di certificati semplici e una struttura di stato di attendibilità che indica i dati di validità di riepilogo in tutte le catene semplici connesse.

Sintassi

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;

Members

cbSize

Dimensione, in byte, della struttura.

TrustStatus

Struttura che indica lo stato di attendibilità combinato della matrice di catene semplici. La struttura include un codice di stato di errore e un codice di stato delle informazioni. Per informazioni sui valori del codice di stato, vedere CERT_TRUST_STATUS.

cChain

Numero di catene semplici nella matrice.

rgpChain

Matrice di puntatori a strutture di catena semplici. rgpChain[0] è la catena semplice del certificato finale e rgpChain[cChain-1] è la catena finale. Se il certificato finale deve essere considerato valido, la catena finale deve iniziare con un certificato contenuto nell'archivio radice o un certificato autofirmato altrimenti attendibile. Se la catena originale inizia con un certificato attendibile, nella matrice sarà presente una sola catena semplice.

cLowerQualityChainContext

Numero di catene nella matrice rgpLowerQualityChainContext .

rgpLowerQualityChainContext

Matrice di puntatori alle strutture di CERT_CHAIN_CONTEXT. Restituito quando CERT_CHAIN_RETURN_LOWER_QUALITY_CONTEXTS è impostato in dwFlags.

fHasRevocationFreshnessTime

Valore booleano impostato su TRUE se dwRevocationFreshnessTime è disponibile.

dwRevocationFreshnessTime

Il valore CurrentTime più grande, in secondi, meno l'elenco di revoche di certificati (CRL) ThisUpdate di tutti gli elementi controllati.

dwCreateFlags

ChainId

Commenti

Quando viene compilata una CERT_CHAIN_CONTEXT , la prima catena semplice inizia con un certificato finale e termina con un certificato autofirmato. Se il certificato autofirmato non è un certificato radice o altrimenti attendibile, viene effettuato un tentativo di compilazione di una nuova catena. Gli elenchi di scopi consentiti vengono usati per creare la nuova catena a partire dal certificato autofirmato dalla catena originale come certificato finale della nuova catena. Questo processo continua a creare catene semplici aggiuntive fino a quando il primo certificato autofirmato non è un certificato attendibile o fino a quando non non è possibile creare una catena semplice aggiuntiva.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione wincrypt.h

Vedi anche

CERT_SIMPLE_CHAIN

CERT_TRUST_STATUS

CertGetCertificateChain