CERT_CHAIN_ENGINE_CONFIG struttura (wincrypt.h)
La struttura CERT_CHAIN_ENGINE_CONFIG imposta i parametri per la creazione di un motore di catena di certificati non predefinito. Il motore usato determina i modi in cui vengono compilate le catene di certificati.
Sintassi
typedef struct _CERT_CHAIN_ENGINE_CONFIG {
DWORD cbSize;
HCERTSTORE hRestrictedRoot;
HCERTSTORE hRestrictedTrust;
HCERTSTORE hRestrictedOther;
DWORD cAdditionalStore;
HCERTSTORE *rghAdditionalStore;
DWORD dwFlags;
DWORD dwUrlRetrievalTimeout;
DWORD MaximumCachedCertificates;
DWORD CycleDetectionModulus;
HCERTSTORE hExclusiveRoot;
HCERTSTORE hExclusiveTrustedPeople;
DWORD dwExclusiveFlags;
} CERT_CHAIN_ENGINE_CONFIG, *PCERT_CHAIN_ENGINE_CONFIG;
Members
cbSize
Dimensioni di questa struttura in byte.
hRestrictedRoot
Questo parametro di configurazione può essere usato per limitare l'archivio radice. Se usato, può essere l'handle di qualsiasi HCERTSTORE contenente solo un subset appropriato dei certificati nell'archivio radice.
hRestrictedTrust
Handle dell'archivio. Se usato, limita gli archivi a cui è stata eseguita la ricerca per trovare gli elenchi di controllo di controllo.
hRestrictedOther
Handle dell'archivio. Se usato, limita gli archivi cercati certificati e CCL.
cAdditionalStore
Conteggio di archivi aggiuntivi da cercare per i certificati e i certificati e i CCL necessari per compilare catene.
rghAdditionalStore
Puntatore a una matrice di handle di negozi per eventuali archivi aggiuntivi da cercare nelle catene di costruzione.
dwFlags
I flag seguenti sono definiti.
dwUrlRetrievalTimeout
Numero di millisecondi prima di un timeout per il recupero degli oggetti URL basati sulla rete. Può essere impostato su zero per usare il limite predefinito.
MaximumCachedCertificates
È possibile limitare il numero di certificati che possono essere memorizzati nella cache come catena. Può essere impostato su 0 per usare il limite predefinito.
CycleDetectionModulus
Numero di certificati aggiunti alla catena prima che venga effettuato un controllo per determinare se esiste un ciclo di certificati nella catena. Un ciclo può essere definito come avere lo stesso certificato in due posizioni diverse in una catena.
Più basso sarà il numero, verranno effettuati i controlli più frequenti. Il controllo aggiuntivo dei cicli di certificati rallenta notevolmente il processo. Questo parametro può essere impostato su zero per usare il limite predefinito.
hExclusiveRoot
Gestire un archivio certificati che contiene ancoraggi di attendibilità esclusivi. Se il membro hExclusiveRoot o hExclusiveTrustedPeople punta a un archivio valido, viene usata la modalità di attendibilità esclusiva per la compilazione della catena.
Windows 7 e Windows Server 2008 R2: Il supporto per questo membro inizia.
hExclusiveTrustedPeople
Gestire in un archivio certificati contenente certificati attendibili specifici dell'applicazione. Se il membro hExclusiveRoot o hExclusiveTrustedPeople punta a un archivio valido, viene usata la modalità di attendibilità esclusiva per la compilazione della catena.
Windows 7 e Windows Server 2008 R2: Il supporto per questo membro inizia.
dwExclusiveFlags
Il flag seguente può essere impostato. Il flag si applica solo se hExclusiveRoot o hExclusiveTrustedPeople o entrambi non sono NULL.
Windows 8 e Windows Server 2012: Il supporto per questo membro inizia.
Valore | Significato |
---|---|
|
Indica che un certificato CA intermedio non autofirmato nell'archivio hExclusiveRoot deve essere considerato come ancoraggio di attendibilità durante la convalida del certificato. Se un certificato si concatena fino a questa CA, la compilazione della catena viene terminata e il certificato viene considerato attendibile. Nessun controllo di verifica o revoca della firma viene eseguito sul certificato CA.
Per impostazione predefinita, se questo flag non è impostato, solo i certificati autofirmati nell'archivio hExclusiveRoot vengono considerati ancoraggi attendibili. Vedere anche il valore CERT_TRUST_IS_CA_TRUSTED nella struttura CERT_TRUST_STATUS . |
Commenti
Il motore di compilazione della catena usa quattro archivi certificati nelle catene di costruzione. Si tratta di hRoot, hWorld, hTrust e hOther. Questi handle di archivi vengono stabiliti usando le informazioni in questa struttura quando viene creato un motore di catena.
hRoot è l'handle dell'archivio da hRestrictedRoot o, se hRestrictedRoot è NULL, l'handle per System Store "Root".
hWorld è un archivio certificati di raccolta, tra cui archivi di pari livello hRoot, "CA", "My", "Trust" e tutti gli archivi aggiuntivi i cui handle si trovano nella matrice puntata da rghAdditionalStore.
hTrust è l'handle dell'archivio da hRestrictedTrust o, se hRestrictedTrust è NULL, hWorld.
hOther è hRestrictedOther più hRoot o, se hRestrictedTrust è diverso da NULL, l'archivio raccolta hWorld e l'handle di archiviazione da hRestrictedTrust.
La modalità trust esclusiva consente alle applicazioni di specificare ancoraggi di attendibilità e certificati attendibili per la convalida della catena di certificati. Nella modalità di attendibilità esclusiva, l'archivio radice e l'archivio utenti attendibili nel sistema vengono ignorati e gli ancoraggi e i certificati a cui puntano i membri hExclusiveRoot e hExclusiveTrustedPeople vengono usati.
Requisiti
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | wincrypt.h |