Partager via


structure WSD_SECURITY_CERT_VALIDATION (wsdbase.h)

Représente les critères permettant de faire correspondre les certificats clients à ceux d’un serveur HTTPS.

N’utilisez pas WSD_SECURITY_CERT_VALIDATION_V1 directement dans votre code ; l’utilisation de WSD_SECURITY_CERT_VALIDATION garantit plutôt que la version appropriée, en fonction de la version de Windows.

Syntaxe

typedef struct _WSD_SECURITY_CERT_VALIDATION {
  PCCERT_CONTEXT *certMatchArray;
  DWORD          dwCertMatchArrayCount;
  HCERTSTORE     hCertMatchStore;
  HCERTSTORE     hCertIssuerStore;
  DWORD          dwCertCheckOptions;
  LPCWSTR        pszCNGHashAlgId;
  BYTE           *pbCertHash;
  DWORD          dwCertHashSize;
} WSD_SECURITY_CERT_VALIDATION;

Membres

certMatchArray

Tableau de structures CERT_CONTEXT qui contiennent des certificats à mettre en correspondance avec ceux fournis par le serveur ou le client HTTPS. Un seul certificat correspondant est requis pour la validation. Ce paramètre peut être NULL.

dwCertMatchArrayCount

Nombre de certificats dans certMatchArray.

hCertMatchStore

Handle d’un magasin de certificats qui contient des certificats à mettre en correspondance avec ceux fournis par le serveur ou le client HTTPS. Un seul certificat correspondant est requis pour la validation. Ce paramètre peut être NULL.

hCertIssuerStore

Handle d’un magasin de certificats qui contient des certificats racines sur lesquels un certificat du serveur ou du client HTTPS doit être lié. La validation réussit tant que le certificat se chaîne jusqu’à au moins un certificat racine. Ce paramètre peut être NULL.

dwCertCheckOptions

Combinaison or au niveau du bit de valeurs qui spécifient les vérifications de certificat à ignorer.

Valeur Signification
WSDAPI_SSL_CERT_DEFAULT_CHECKS
0x0
Gérez toutes les erreurs de certificat révoqué.
WSDAPI_SSL_CERT_IGNORE_REVOCATION
0x1
Ignorer les erreurs de certificat révoqué.
WSDAPI_SSL_CERT_IGNORE_EXPIRY
0x2
Ignorer les erreurs de certificat expiré.
WSDAPI_SSL_CERT_IGNORE_WRONG_USAGE
0x4
Ignorer les erreurs d’utilisation des certificats.
WSDAPI_SSL_CERT_IGNORE_UNKNOWN_CA
0x8
Ignorer les erreurs d’autorité de certification inconnues.
WSDAPI_SSL_CERT_IGNORE_INVALID_CN
0x10
Ignorez les erreurs de certificat de nom commun non valides.

pszCNGHashAlgId

pbCertHash

dwCertHashSize

Remarques

Cette structure est utilisée dans le membre pConfigData de la structure WSD_CONFIG_PARAM .

Lorsque le configParamType de WSD_CONFIG_PARAM est WSD_SECURITY_SSL_SERVER_CERT_VALIDATION, cette structure peut être utilisée pour valider les certificats de serveur SSL présentés par un serveur SSL.

Lorsque le configParamType de WSD_CONFIG_PARAM est WSD_SECURITY_SSL_CLIENT_CERT_VALIDATION, cette structure peut être utilisée pour valider les certificats clients SSL présentés par un client SSL.

WSD_SECURITY_CERT_VALIDATION définit 3 mécanismes de correspondance de certificats. Pour obtenir une correspondance, au moins un mécanisme de ce type doit être respecté.

Si l’application est générée à l’aide du Kit de développement logiciel (SDK) Windows 8 ciblé pour le système d’exploitation Windows 8, WSD_SECURITY_CERT_VALIDATION se résout dans la nouvelle structure. Toutefois, par conséquent, l’application ne peut s’exécuter que sur des machines Windows 8.

Si l’application est générée à l’aide du Kit de développement logiciel (SDK) Windows 8 ciblé pour le système d’exploitation Windows 7, WSD_SECURITY_CERT_VALIDATION est résolu dans l’ancienne structure (WSD_SECURITY_CERT_VALIDATION_V1). Bien qu’il soit donné que l’application sera prise en charge pour Windows 7, elle est également sur Windows 8, car wsdapi.dll sur Windows 8 gérera à la fois l’ancienne et la version plus récente de cette structure.

Une application déjà créée à l’aide du Kit de développement logiciel (SDK) Windows 7 utilise l’ancienne version de cette structure. Il fonctionnera correctement sur Windows 8, car wsdapi.dll sur Windows 8 peut gérer les deux versions.

Spécifications

   
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête wsdbase.h (inclure Windows.h)