CERT_CHAIN_PARA-Struktur (wincrypt.h)
Die CERT_CHAIN_PARA-Struktur legt die Such- und Abgleichskriterien fest, die beim Erstellen einer Zertifikatkette verwendet werden sollen.
Syntax
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;
Member
cbSize
Die Größe (in Bytes) dieser Struktur.
RequestedUsage
Struktur, die die Art der Übereinstimmung angibt, die erforderlich ist, um Ausstellerzertifikate für das Erstellen einer Zertifikatkette zu finden. Die Struktur, auf die verwiesen wird, gibt an, ob AND- oder OR-Logik im Abgleichsprozess verwendet werden soll. Die Struktur enthält auch ein Array von OIDs, die abgeglichen werden sollen.
RequestedIssuancePolicy
Optionale Struktur, die die Art des Abgleichs von Ausstellungsrichtlinieneinschränkungen angibt, die beim Erstellen einer Zertifikatkette gelten. Die Struktur, auf die verwiesen wird, gibt an, ob AND- oder OR-Logik im Abgleichsprozess verwendet werden soll. Die Struktur enthält auch ein Array von OIDs, die abgeglichen werden sollen.
dwUrlRetrievalTimeout
Optionale Zeit in Millisekunden, bevor das Zeitlimit für die Sperrüberprüfung aufgehoben wird. Dieses Element ist optional.
fCheckRevocationFreshnessTime
Optionales Element. Wenn dieses Flag TRUE ist, wird versucht, eine neue Zertifikatsperrliste abzurufen, wenn dieses Update größer oder gleich der aktuellen Systemzeit abzüglich des dwRevocationFreshnessTime-Werts ist. Wenn dieses Flag nicht festgelegt ist, wird die Nächste Aktualisierungszeit der Zertifikatsperrliste verwendet.
dwRevocationFreshnessTime
Die aktuelle Zeit in Sekunden abzüglich der Aktualisierungszeit der Zertifikatsperrliste aller überprüften Elemente.
pftCacheResync
Optionales Element. Wenn sie auf einen Wert ohne NULL festgelegt sind, werden Informationen, die vor der angegebenen Zeit zwischengespeichert werden, als ungültig betrachtet, und die Cache-Neusynchronisierung wird ausgeführt.
Windows Vista: Die Unterstützung für dieses Member beginnt.
pStrongSignPara
Optional. Geben Sie einen Zeiger auf eine CERT_STRONG_SIGN_PARA Struktur an, um eine starke Signaturprüfung zu aktivieren.
Windows 8 und Windows Server 2012: Die Unterstützung für dieses Mitglied beginnt.
dwStrongSignFlags
Optionale Flags, die das Verhalten des Kettenabrufs ändern. Dies kann null oder der folgende Wert sein.
Windows 8 und Windows Server 2012: Die Unterstützung für diese Eigenschaft beginnt.
Hinweise
Die folgenden Hinweise gelten für die Überprüfung auf starke Signaturen.
- Legen Sie den pStrongSignPara-Member so fest, dass bei Verwendung der Funktion CertGetCertificateChain oder CertSelectCertificateChains nach starken Signaturen gesucht wird.
- Wenn in der Kette ein Zertifikat ohne starke Signatur gefunden wird, werden die CERT_TRUST_HAS_WEAK_SIGNATURE - und CERT_TRUST_IS_NOT_SIGNATURE_VALID-Fehler im Feld dwErrorStatus der CERT_TRUST_STATUS-Struktur festgelegt. Der ppChainContext-Parameter der CertGetCertificateChain-Funktion und der pprgpSelection-Parameter der CertSelectCertificateChains-Funktion verweisen auf eine CERT_CHAIN_CONTEXT Struktur, die wiederum auf die CERT_TRUST_STATUS-Struktur verweist.
- Wenn die Kette stark signiert ist, wird der öffentliche Schlüssel im Endzertifikat überprüft, um festzustellen, ob er die Mindestanforderungen an die Länge eines öffentlichen Schlüssels für eine starke Signatur erfüllt. Wenn die Bedingung nicht erfüllt ist, werden die CERT_TRUST_HAS_WEAK_SIGNATURE - und CERT_TRUST_IS_NOT_SIGNATURE_VALID-Fehler im Feld dwErrorStatus der CERT_TRUST_STATUS-Struktur festgelegt. Legen Sie den CERT_CHAIN_STRONG_SIGN_DISABLE_END_CHECK_FLAG Wert im dwStrongSignFlags-Member fest, um diese Überprüfung zu deaktivieren.
- Wenn die CERT_STRONG_SIGN_ENABLE_CRL_CHECK - oder CERT_STRONG_SIGN_ENABLE_OCSP_CHECK-Flags in der CERT_STRONG_SIGN_SERIALIZED_INFO-Struktur festgelegt sind, auf die die CERT_STRONG_SIGN_PARA Struktur verweist, auf die das pStrongSignPara-Element verweist, und eine CRL- oder OCSP-Antwort ohne starke Signatur gefunden wird, wird die CRL- oder OCSP-Antwort als offline behandelt. Das heißt, die CERT_TRUST_IS_OFFLINE_REVOCATION - und CERT_TRUST_REVOCATION_STATUS_UNKNOWN-Fehler werden im Feld dwErrorStatus der CERT_TRUST_STATUS-Struktur festgelegt. Außerdem ist das dwRevocationResult-Element der CERT_REVOCATION_INFO-Struktur auf NTE_BAD_ALGID festgelegt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | wincrypt.h |