struttura CERT_CHAIN_PARA (wincrypt.h)
La struttura CERT_CHAIN_PARA stabilisce i criteri di ricerca e corrispondenza da usare per la compilazione di una catena di certificati.
Sintassi
typedef struct _CERT_CHAIN_PARA {
DWORD cbSize;
CERT_USAGE_MATCH RequestedUsage;
CERT_USAGE_MATCH RequestedIssuancePolicy;
DWORD dwUrlRetrievalTimeout;
BOOL fCheckRevocationFreshnessTime;
DWORD dwRevocationFreshnessTime;
LPFILETIME pftCacheResync;
PCCERT_STRONG_SIGN_PARA pStrongSignPara;
DWORD dwStrongSignFlags;
} CERT_CHAIN_PARA, *PCERT_CHAIN_PARA;
Members
cbSize
Dimensione, in byte, della struttura.
RequestedUsage
Struttura che indica il tipo di corrispondenza necessario per trovare i certificati dell'autorità emittente per la compilazione di una catena di certificati. La struttura a cui punta indica se la logica AND o OR deve essere utilizzata nel processo di corrispondenza. La struttura include anche una matrice di OID da associare.
RequestedIssuancePolicy
Struttura facoltativa che indica il tipo di vincolo dei criteri di rilascio che si applica durante la compilazione di una catena di certificati. La struttura a cui punta indica se la logica AND o OR deve essere utilizzata nel processo di corrispondenza. La struttura include anche una matrice di OID da associare.
dwUrlRetrievalTimeout
Tempo facoltativo, in millisecondi, prima del timeout del controllo delle revoche. Questo membro è facoltativo.
fCheckRevocationFreshnessTime
Membro facoltativo. Quando questo flag è TRUE, viene effettuato un tentativo di recuperare un nuovo CRL se questo aggiornamento è maggiore o uguale all'ora di sistema corrente meno il valore dwRevocationFreshnessTime . Se questo flag non è impostato, viene usata l'ora successiva di aggiornamento del CRL.
dwRevocationFreshnessTime
Ora corrente, in secondi, meno l'ora di aggiornamento del CRL di tutti gli elementi controllati.
pftCacheResync
Membro facoltativo. Se impostato su un valore non NULL , le informazioni memorizzate nella cache prima dell'ora specificata vengono considerate non valide e viene eseguita la risincronizzazione della cache.
Windows Vista: Inizia il supporto per questo membro.
pStrongSignPara
facoltativo. Specificare un puntatore a una struttura di CERT_STRONG_SIGN_PARA per abilitare il controllo delle firme complesse.
Windows 8 e Windows Server 2012: inizia il supporto per questo membro.
dwStrongSignFlags
Flag facoltativi che modificano il comportamento di recupero della catena. Può essere zero o il valore seguente.
Windows 8 e Windows Server 2012: inizia il supporto per questa proprietà.
Commenti
Quando si verifica la presenza di firme complesse, si applicano le osservazioni seguenti.
- Impostare il membro pStrongSignPara per verificare la presenza di firme complesse quando si usa la funzione CertGetCertificateChain o CertSelectCertificateChains .
- Se nella catena viene trovato un certificato senza firma complessa, gli errori di CERT_TRUST_HAS_WEAK_SIGNATURE e CERT_TRUST_IS_NOT_SIGNATURE_VALID vengono impostati nel campo dwErrorStatus della struttura CERT_TRUST_STATUS . Il parametro ppChainContext della funzione CertGetCertificateChain e il parametro pprgpSelection della funzione CertSelectCertificateChains puntano a una struttura CERT_CHAIN_CONTEXT che, a sua volta, punta alla struttura CERT_TRUST_STATUS .
- Se la catena è con firma avanzata, viene verificata la chiave pubblica nel certificato finale per determinare se soddisfa i requisiti minimi di lunghezza della chiave pubblica per una firma complessa. Se la condizione non viene soddisfatta, gli errori CERT_TRUST_HAS_WEAK_SIGNATURE e CERT_TRUST_IS_NOT_SIGNATURE_VALID vengono impostati nel campo dwErrorStatus della struttura CERT_TRUST_STATUS . Impostare il valore CERT_CHAIN_STRONG_SIGN_DISABLE_END_CHECK_FLAG nel membro dwStrongSignFlags per disabilitare questo controllo.
- Se i flag CERT_STRONG_SIGN_ENABLE_CRL_CHECK o CERT_STRONG_SIGN_ENABLE_OCSP_CHECK vengono impostati nella struttura CERT_STRONG_SIGN_SERIALIZED_INFO a cui fa riferimento la struttura CERT_STRONG_SIGN_PARA a cui punta il membro pStrongSignPara e viene trovata una risposta CRL o OCSP senza una firma complessa, la risposta CRL o OCSP verrà considerata offline. Ovvero, gli errori di CERT_TRUST_IS_OFFLINE_REVOCATION e CERT_TRUST_REVOCATION_STATUS_UNKNOWN vengono impostati nel campo dwErrorStatus della struttura CERT_TRUST_STATUS . Inoltre, il membro dwRevocationResult della struttura CERT_REVOCATION_INFO è impostato su NTE_BAD_ALGID.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | wincrypt.h |